:root{--wsp-black: #000000;--wsp-white: #ffffff;--wsp-red: #ff372f;--wsp-red-hover: #cc2126;--wsp-red-1: #ff372f;--wsp-grey-0: #e6e6e6;--wsp-grey-1: #808080;--wsp-grey-2: #666666;--wsp-grey-3: #404040;--wsp-blue-2: #0066cc;--surface: var(--wsp-white);--surface-container-low: var(--wsp-grey-0);--control-surface: var(--wsp-grey-0);--control-surface-focus: var(--wsp-grey-2);--btn-secondary-bg: var(--wsp-grey-0);--btn-disabled-bg: var(--wsp-grey-0);--btn-disabled-fg: var(--wsp-grey-1);--table-header-bg: var(--wsp-grey-1);--table-header-fg: var(--wsp-white);--app-color-link: var(--wsp-blue-2);--focus-ring-color: var(--wsp-red);--control-radius: 0;--wsp-font-body: "IBM Plex Sans", system-ui, sans-serif;--wsp-font-display: "IBM Plex Sans", system-ui, sans-serif;--app-space-xs: .25rem;--app-space-sm: .5rem;--app-space-md: 1rem;--app-space-lg: 1.5rem;--app-font-ui: .875rem;--app-font-sm: .75rem;--app-font-xl: 1.125rem;--topbar-height: 3rem}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--wsp-font-body);font-size:var(--app-font-ui);color:var(--wsp-black);background:var(--surface)}:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.app-shell{display:flex;flex-direction:column;height:100%;min-height:0}.topbar{display:flex;align-items:center;gap:var(--app-space-md);min-height:var(--topbar-height);padding:0 var(--app-space-md);background:var(--wsp-black);color:var(--wsp-white)}.system-status-banner{display:flex;align-items:center;gap:var(--app-space-sm);flex-shrink:0;padding:.4rem var(--app-space-md);font-size:.8rem;font-weight:600;line-height:1.3;color:var(--wsp-white)}.system-status-banner--error{background:var(--wsp-red)}.system-status-banner--warn{background:#b45309}.system-status-banner__dot{width:.55rem;height:.55rem;flex-shrink:0;border-radius:50%;background:currentcolor;animation:system-status-pulse 1.4s ease-in-out infinite}@keyframes system-status-pulse{0%,to{opacity:1}50%{opacity:.35}}.topbar__brand{display:flex;align-items:center;gap:var(--app-space-sm);font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-decoration:none}.topbar__brand:link,.topbar__brand:visited,.topbar__brand:hover,.topbar__brand:active{text-decoration:none}.topbar__brand-name{line-height:1}.topbar__brand-burn{color:var(--wsp-white)}.topbar__brand-boss{color:var(--wsp-red)}.topbar__logo{display:block;width:1.75rem;height:1.75rem;flex-shrink:0}.topbar__progress{flex:1;min-width:0;display:flex;justify-content:center;align-items:center;padding:0 1.25rem}.topbar__progress-row{display:flex;align-items:center;gap:.65rem;width:75%;min-width:0;max-width:100%}.topbar__progress-label{margin:0;flex-shrink:0;font-size:.68rem;line-height:1.2;color:var(--wsp-grey-0);white-space:nowrap}.topbar__progress-track{display:flex;flex:1;min-width:0;height:.55rem;background:#ffffff14;overflow:hidden}.topbar__progress-segment{height:100%;min-width:2px;flex-shrink:0}.topbar__progress-segment:hover{filter:brightness(1.2)}.topbar__progress-remainder{height:100%;flex-shrink:0;background:#ffffff1f}.topbar__actions{display:flex;align-items:center;gap:.35rem;margin-left:auto}.topbar__help-trigger{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:0;background:transparent;color:var(--wsp-white);cursor:pointer}.topbar__help-trigger:hover{color:var(--wsp-grey-0)}.topbar__help-icon{font-size:1.4rem}.topbar__chat{position:relative}.topbar__chat-trigger{position:relative;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:0;background:transparent;color:var(--wsp-white);cursor:pointer}.topbar__chat-trigger:hover{color:var(--wsp-grey-0)}.topbar__chat-icon{display:block;width:1.35rem;height:1.35rem}.chat-panel__badge{position:absolute;top:-.15rem;right:-.2rem;min-width:1rem;height:1rem;padding:0 .2rem;border-radius:999px;background:var(--wsp-red);color:var(--wsp-white);font-size:.62rem;font-weight:700;line-height:1rem;text-align:center}.help-modal__backdrop{position:fixed;inset:0;z-index:1400;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0000008c}.help-modal{display:flex;flex-direction:column;width:min(40rem,100%);max-height:85vh;overflow:hidden;border:1px solid rgb(255 255 255 / 14%);background:var(--wsp-black);color:var(--wsp-white);box-shadow:0 18px 48px #0000008c}.help-modal__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;padding:.85rem 1rem;border-bottom:1px solid rgb(255 255 255 / 10%)}.help-modal__title{margin:0;font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.help-modal__close{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--wsp-grey-0);cursor:pointer}.help-modal__close:hover{color:var(--wsp-white)}.help-modal__body{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.25rem 2rem;padding:1rem;overflow-y:auto}.help-modal__group-title{margin:0 0 .5rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-1)}.help-modal__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}.help-modal__row{display:flex;align-items:baseline;gap:.65rem;font-size:.82rem}.help-modal__keys{display:inline-flex;gap:.25rem;flex-shrink:0;min-width:3rem}.help-modal__key{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;padding:.1rem .4rem;border:1px solid rgb(255 255 255 / 25%);border-radius:4px;background:#ffffff14;font-family:inherit;font-size:.72rem;font-weight:700;line-height:1.3}.help-modal__label{color:var(--wsp-grey-0)}.help-modal__hint{flex-shrink:0;margin:0;padding:.75rem 1rem;border-top:1px solid rgb(255 255 255 / 10%);font-size:.72rem;color:var(--wsp-grey-1)}.chat-panel{position:fixed;z-index:1200;display:flex;flex-direction:column;min-width:16rem;min-height:14rem;overflow:hidden;border:1px solid rgb(255 255 255 / 14%);border-radius:0;background:var(--wsp-black);color:var(--wsp-white);box-shadow:0 12px 32px #00000073}.chat-panel__header{flex-shrink:0;padding:.65rem .75rem .5rem;border-bottom:1px solid rgb(255 255 255 / 10%);cursor:grab;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-panel__header.is-dragging{cursor:grabbing}.chat-panel__title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.chat-panel__title{margin:0;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chat-panel__header-actions{display:flex;align-items:center;gap:.5rem}.chat-panel__header-actions button{cursor:pointer}.chat-panel__header-actions .map-queue-panel__chip{color:var(--wsp-white);background:var(--wsp-grey-3);box-shadow:0 0 0 1px var(--wsp-grey-2);border-radius:0;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}.chat-panel__header-actions .map-queue-panel__chip.is-active{background:var(--wsp-grey-3);box-shadow:0 0 0 1px var(--wsp-red)}.chat-panel__close{border:none;background:transparent;color:var(--wsp-grey-0);font-size:1.2rem;line-height:1;cursor:pointer}.chat-panel__online{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.chat-panel__online-empty{font-size:.68rem;color:var(--wsp-grey-1)}.chat-panel__online-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .4rem;border-radius:999px;background:#ffffff14;font-size:.68rem}.chat-panel__online-dot,.chat-message__dot{width:.45rem;height:.45rem;border-radius:999px;flex-shrink:0}.chat-panel__body{flex:1;min-height:0;overflow:auto;padding:.65rem .75rem;background:#ffffff0f;scrollbar-width:thin;scrollbar-color:var(--wsp-grey-2) rgb(255 255 255 / 4%)}.chat-panel__body::-webkit-scrollbar{width:.45rem}.chat-panel__body::-webkit-scrollbar-track{background:#ffffff0a}.chat-panel__body::-webkit-scrollbar-thumb{background:var(--wsp-grey-2);border:2px solid transparent;background-clip:padding-box}.chat-panel__body::-webkit-scrollbar-thumb:hover{background:var(--wsp-grey-1);border:2px solid transparent;background-clip:padding-box}.chat-panel__status,.chat-panel__error{margin:0 0 .5rem;font-size:.72rem;color:var(--wsp-grey-0)}.chat-panel__error{color:#ff8f8f}.chat-message+.chat-message{margin-top:.65rem}.chat-message--to-me{background:var(--wsp-grey-3);border-radius:0;padding:.35rem .45rem;margin-inline:-.45rem}.chat-message__meta{display:flex;align-items:center;gap:.35rem;margin-bottom:.15rem}.chat-message__author{font-size:.72rem;font-weight:700}.chat-message__time{font-size:.65rem;color:var(--wsp-grey-1)}.chat-message__body{margin:0;font-size:.78rem;line-height:1.35;white-space:pre-wrap;word-break:break-word}.chat-message__body a{color:#8ec5ff}.chat-message__mention{color:#8ec5ff;font-weight:600}.chat-composer{position:relative;flex:1;min-width:0;display:flex;flex-direction:column}.chat-composer .chat-panel__input{width:100%}.chat-mention-dropdown{position:absolute;left:0;right:0;bottom:calc(100% + .35rem);z-index:2;margin:0;padding:.25rem 0;list-style:none;max-height:10rem;overflow:auto;border:1px solid rgb(255 255 255 / 16%);border-radius:0;background:var(--wsp-grey-3);box-shadow:0 8px 20px #00000059;scrollbar-width:thin;scrollbar-color:var(--wsp-grey-1) rgb(255 255 255 / 6%)}.chat-mention-dropdown::-webkit-scrollbar{width:.45rem}.chat-mention-dropdown::-webkit-scrollbar-track{background:#ffffff0f}.chat-mention-dropdown::-webkit-scrollbar-thumb{background:var(--wsp-grey-1);border:2px solid transparent;background-clip:padding-box}.chat-mention-dropdown__option{display:block;width:100%;border:none;background:transparent;color:var(--wsp-white);font:inherit;font-size:.75rem;text-align:left;padding:.35rem .55rem;cursor:pointer}.chat-mention-dropdown__option.is-active,.chat-mention-dropdown__option:hover{background:#ffffff1a}.chat-panel__footer{display:flex;gap:.45rem;align-items:flex-end;padding:.55rem .75rem .65rem;border-top:1px solid rgb(255 255 255 / 10%)}.chat-panel__input{flex:1;min-height:2.4rem;resize:none;border:1px solid rgb(255 255 255 / 16%);border-radius:0;background:#ffffff0f;color:var(--wsp-white);font:inherit;font-size:.78rem;padding:.4rem .5rem}.chat-panel__send{border:none;border-radius:0;background:var(--wsp-red);color:var(--wsp-white);font-size:.75rem;font-weight:700;padding:.45rem .7rem;cursor:pointer}.chat-panel__send:disabled{opacity:.45;cursor:not-allowed}.chat-panel__resize-handle{position:absolute;right:0;bottom:0;z-index:3;width:1rem;height:1rem;padding:0;border:none;background:linear-gradient(135deg,transparent 0 45%,rgb(255 255 255 / 35%) 45% 55%,transparent 55% 100%);cursor:nwse-resize;touch-action:none}.chat-panel__resize-handle:hover,.chat-panel__resize-handle:focus-visible{background:linear-gradient(135deg,transparent 0 40%,rgb(255 255 255 / 55%) 40% 60%,transparent 60% 100%)}.topbar__user-menu{position:relative}.topbar__user-trigger{display:flex;align-items:center;border:none;background:transparent;color:inherit;cursor:pointer;padding:.15rem;border-radius:0}.topbar__user-trigger:hover .topbar__user-initials,.topbar__user-menu.is-open .topbar__user-initials{outline:2px solid var(--wsp-grey-0);outline-offset:2px}.topbar__user-initials{width:2rem;height:2rem;border-radius:0;background:var(--wsp-red);color:var(--wsp-white);font-size:.72rem;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;flex-shrink:0}.topbar__user-panel{position:absolute;right:0;top:calc(100% + .4rem);min-width:16rem;background:var(--wsp-white);color:var(--wsp-black);border:1px solid var(--wsp-grey-0);box-shadow:0 8px 24px #0000002e;z-index:50;display:none;padding:var(--app-space-sm)}.topbar__user-menu.is-open .topbar__user-panel{display:block}.topbar__user-panel-header{display:flex;flex-direction:column;gap:.15rem;padding-bottom:var(--app-space-sm);border-bottom:1px solid var(--wsp-grey-0);margin-bottom:var(--app-space-sm)}.topbar__user-panel-name{font-size:var(--app-font-sm);font-weight:700;color:var(--wsp-black)}.topbar__user-panel-email{font-size:var(--app-font-sm);color:var(--wsp-grey-2);word-break:break-all}.topbar__user-panel-role{margin-top:.15rem;font-size:var(--app-font-sm);color:var(--wsp-black);font-weight:400}.topbar__user-panel-form{display:flex;flex-direction:column;gap:.35rem;margin-bottom:var(--app-space-sm)}.topbar__user-panel-label{font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-grey-2)}.topbar__user-panel-name-row{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.topbar__user-panel-field--names{display:grid;grid-template-columns:1fr 1fr auto;gap:.35rem;align-items:center}.topbar__user-panel-hint{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.topbar__user-panel-field{display:flex;gap:.35rem;align-items:center}.topbar__user-panel-input{flex:1;min-width:0;font-size:var(--app-font-sm)}.topbar__user-panel-save{flex-shrink:0;font-size:var(--app-font-sm);padding:.35rem .6rem}.topbar__user-panel-color-row{display:flex;align-items:center;gap:.35rem}.topbar__user-panel-color-input{width:2.5rem;height:2rem;padding:0;border:1px solid var(--wsp-grey-0);background:transparent;cursor:pointer}.topbar__user-panel-color-input:disabled{cursor:wait;opacity:.6}.topbar__user-panel-checkbox{display:flex;align-items:center;gap:.45rem;font-size:var(--app-font-sm);color:var(--wsp-black);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.topbar__user-panel-error{margin:0;font-size:var(--app-font-sm);color:var(--wsp-red)}.config-modal__backdrop{position:fixed;inset:0;z-index:1450;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#0000008c}.config-modal{display:flex;flex-direction:column;width:min(34rem,100%);max-height:85vh;overflow:hidden;border:1px solid var(--wsp-grey-0);border-radius:.35rem;background:var(--wsp-white);color:var(--wsp-black);box-shadow:0 18px 48px #00000073}.config-modal__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;padding:.85rem 1rem;border-bottom:1px solid var(--wsp-grey-0)}.config-modal__title{margin:0;font-size:.9rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wsp-black)}.config-modal__close{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--wsp-grey-2);cursor:pointer}.config-modal__close:hover{color:var(--wsp-black)}.config-modal__body{display:flex;flex-direction:column;gap:var(--app-space-sm);padding:1rem;overflow-y:auto}.config-modal__section{display:flex;flex-direction:column;gap:.35rem}.config-modal__section+.config-modal__section{padding-top:var(--app-space-sm);border-top:1px solid var(--wsp-grey-0)}.config-modal__hint{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.config-modal__reset-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.config-modal__reset-sent{font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.config-modal__danger-btn{color:#dc2626;border-color:#dc2626}.config-modal__danger-btn:hover:not(:disabled){background:#dc2626;color:#fff}.gis-tokens{padding-top:var(--app-space-sm);border-top:1px solid var(--wsp-grey-0)}.gis-tokens__hint{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.gis-tokens__create{display:flex;flex-direction:column;gap:.35rem}.gis-tokens__create-fields{display:grid;grid-template-columns:1fr auto;gap:.35rem}.gis-tokens__field{display:flex;flex-direction:column;gap:.2rem;min-width:0}.gis-tokens__field .form-control{font-size:var(--app-font-sm)}.gis-tokens__create-btn{align-self:flex-start;font-size:var(--app-font-sm);padding:.35rem .6rem}.gis-tokens__reveal{display:flex;flex-direction:column;gap:.35rem;padding:.5rem;border:1px solid var(--wsp-grey-0);border-radius:.25rem;background:var(--surface-container-low)}.gis-tokens__reveal-title{margin:0;font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-black)}.gis-tokens__reveal-row{display:flex;align-items:center;gap:.35rem}.gis-tokens__reveal-token{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;font-family:var(--app-font-mono, monospace);font-size:var(--app-font-sm);padding:.25rem .4rem;border-radius:.2rem;background:var(--wsp-white);border:1px solid var(--wsp-grey-0)}.gis-tokens__copy{flex-shrink:0;font-size:var(--app-font-sm);padding:.3rem .55rem}.gis-tokens__reveal-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin:0}.gis-tokens__reveal-meta div{display:flex;flex-direction:column}.gis-tokens__reveal-meta dt{font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-grey-2)}.gis-tokens__reveal-meta dd{margin:0;font-size:var(--app-font-sm);color:var(--wsp-black)}.gis-tokens__empty{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.gis-tokens__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.3rem}.gis-tokens__item{display:flex;align-items:center;gap:.5rem}.gis-tokens__item-info{flex:1;min-width:0;display:flex;flex-direction:column}.gis-tokens__item-name{font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-black)}.gis-tokens__item-meta{font-size:var(--app-font-xs, var(--app-font-sm));color:var(--wsp-grey-2)}.gis-tokens__revoke{flex-shrink:0;font-size:var(--app-font-sm);padding:.25rem .5rem}.topbar__user-panel-actions{display:flex;flex-direction:column;gap:.25rem}.topbar__user-panel-link,.topbar__user-panel-logout{display:block;width:100%;text-align:left;border:none;background:transparent;font:inherit;font-size:var(--app-font-sm);color:var(--wsp-black);text-decoration:none;padding:.35rem .25rem;border-radius:.2rem;cursor:pointer}.topbar__user-panel-link:hover,.topbar__user-panel-logout:hover{background:var(--surface-container-low)}.topbar__user-panel-link:disabled{opacity:.55;cursor:default}.topbar__user-panel-link:disabled:hover{background:transparent}.topbar__user-panel-error{display:block;padding:.15rem .25rem;font-size:var(--app-font-sm);color:var(--wsp-red)}.topbar__user-panel-logout{color:var(--wsp-red)}.topbar__user-name{font-size:var(--app-font-sm);color:var(--wsp-white);max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar__logout{border:none;background:transparent;color:var(--wsp-grey-0);font:inherit;font-size:var(--app-font-sm);cursor:pointer;text-decoration:underline}.topbar__logout:hover{color:var(--wsp-white)}.auth-loading,.auth-page{min-height:100vh;background:var(--surface)}.auth-loading{display:grid;place-items:center;background:var(--surface-container-low)}.auth-page{display:flex;flex-direction:column}.auth-page__wsp{padding:var(--app-space-md) var(--app-space-lg);border-bottom:1px solid var(--wsp-grey-0)}.auth-page__wsp-logo{display:block;height:2rem;width:auto}.auth-page__body{flex:1;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:0}.auth-page__body>*{min-height:0}.auth-hero{display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,4vw,3rem);background:var(--surface-container-low)}.auth-hero__lockup{display:flex;align-items:center;gap:clamp(1rem,3vw,2rem);max-width:36rem}.auth-hero__icon{display:block;width:clamp(5rem,14vw,7.5rem);height:auto;flex-shrink:0}.auth-hero__text{min-width:0}.auth-hero__name{margin:0;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1;letter-spacing:.04em}.auth-hero__burn{color:var(--wsp-black)}.auth-hero__boss{color:var(--wsp-red)}.auth-hero__desc{margin:.75rem 0 0;color:var(--wsp-grey-2);font-size:clamp(.7rem,1.6vw,.875rem);font-weight:600;letter-spacing:.12em;text-transform:uppercase}.auth-hero__tagline-row{display:flex;align-items:center;gap:var(--app-space-sm);margin-top:1rem}.auth-hero__tagline-line{flex:1;height:2px;background:var(--wsp-red);max-width:4rem}.auth-hero__tagline{margin:0;color:var(--wsp-red);font-size:var(--app-font-sm);font-weight:700;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.auth-panel{display:flex;align-items:center;justify-content:center;padding:clamp(1rem,3vw,2rem);min-height:0;overflow-y:auto}.auth-card{width:min(28rem,100%);padding:var(--app-space-lg);background:var(--surface);border:1px solid var(--wsp-grey-0)}.auth-card__stack{display:grid;gap:var(--app-space-md)}.auth-card__header{margin-bottom:var(--app-space-lg)}.auth-card__title{margin:0;font-size:1.25rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.auth-card__subtitle{margin:var(--app-space-sm) 0 0;color:var(--wsp-grey-2);font-size:var(--app-font-sm);line-height:1.45}.auth-card__submit{width:100%}.auth-card__link-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.auth-card__footer,.auth-card__hint{margin:var(--app-space-md) 0 0;color:var(--wsp-grey-2);font-size:var(--app-font-sm);line-height:1.45}.auth-card__link{color:var(--app-color-link)}.auth-card__forgot-link{display:inline-block;margin-top:.35rem;color:var(--app-color-link);font-size:var(--app-font-sm);text-decoration:none}.auth-card__forgot-link:hover{text-decoration:underline}.auth-alert{padding:.85rem 1rem;font-size:var(--app-font-sm);line-height:1.5;border-left:3px solid transparent;overflow-wrap:anywhere;word-break:break-word}.auth-alert--error{color:var(--wsp-black);background:#fef2f2;border-left-color:var(--wsp-red)}.auth-alert--info{color:var(--wsp-black);background:var(--surface-container-low);border-left-color:var(--wsp-grey-2)}@media(max-width:900px){.auth-page__body{grid-template-columns:1fr}.auth-hero{padding:var(--app-space-lg)}.auth-hero__lockup{flex-direction:column;text-align:center}.auth-hero__tagline-row{justify-content:center}}.admin-page{flex:1;overflow:auto;padding:var(--app-space-lg);display:grid;gap:var(--app-space-lg)}.admin-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--app-space-md)}.admin-page__title{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.admin-page__subtitle{margin:var(--app-space-sm) 0 0;color:var(--wsp-grey-2);font-size:var(--app-font-sm);max-width:40rem}.admin-card{background:var(--surface);border:1px solid var(--wsp-grey-0);padding:var(--app-space-lg)}.admin-card__title{margin:0 0 var(--app-space-md);font-size:1rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.admin-invite-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--app-space-md);align-items:end}.admin-users-table-wrap{overflow-x:auto}.admin-users-table{width:100%;border-collapse:collapse;font-size:var(--app-font-sm)}.admin-users-table th,.admin-users-table td{padding:.65rem .75rem;border-bottom:1px solid var(--wsp-grey-0);text-align:left;vertical-align:middle}.admin-users-table th{background:var(--surface-container-low);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.admin-users-table__role{min-width:8rem}.admin-users-table__actions{white-space:nowrap}.admin-users-table__actions-row{display:flex;gap:var(--app-space-sm);align-items:center}.admin-users-table__muted{color:var(--wsp-grey-2);font-size:var(--app-font-sm);font-style:italic}.admin-users-table tr.is-removed{opacity:.6}.admin-create-mode{display:flex;flex-wrap:wrap;gap:var(--app-space-md);margin-bottom:var(--app-space-md)}.admin-create-mode__option{display:inline-flex;align-items:center;gap:var(--app-space-xs);font-size:var(--app-font-sm);font-weight:600;cursor:pointer}.admin-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-md);margin-bottom:var(--app-space-md)}.admin-card__header .admin-card__title{margin:0}.admin-card__actions{display:flex;align-items:center;gap:var(--app-space-md)}.admin-toggle{display:inline-flex;align-items:center;gap:var(--app-space-xs);font-size:var(--app-font-sm);font-weight:600;cursor:pointer}.admin-purge{border:1px solid var(--wsp-red);background:color-mix(in srgb,var(--wsp-red) 6%,transparent);padding:var(--app-space-md);margin-bottom:var(--app-space-md);display:grid;gap:var(--app-space-md)}.admin-purge__text{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.admin-purge__controls{display:flex;flex-wrap:wrap;align-items:end;gap:var(--app-space-md)}.danger-zone{border:1px solid var(--wsp-red)}.danger-zone__title{color:var(--wsp-red)}.danger-zone__scopes{display:flex;flex-direction:column;gap:var(--app-space-sm);margin:var(--app-space-md) 0}.danger-zone__scope{display:flex;align-items:flex-start;gap:var(--app-space-sm);padding:var(--app-space-sm);border:1px solid var(--wsp-border, #d0d0d0);border-radius:var(--control-radius)}.danger-zone__scope-body{display:flex;flex-direction:column;gap:.15rem}.danger-zone__scope-label{font-weight:600;font-size:var(--app-font-sm)}.danger-zone__scope-count{font-weight:400;opacity:.7}.danger-zone__scope-hint{font-size:var(--app-font-xs, .75rem);opacity:.75}.danger-zone__warn{margin:0 0 var(--app-space-md);font-size:var(--app-font-sm);color:var(--wsp-red)}.danger-zone__confirm{margin-top:var(--app-space-md);padding:var(--app-space-md);border:1px solid var(--wsp-red);border-radius:var(--control-radius);background:color-mix(in srgb,var(--wsp-red) 6%,transparent);display:flex;flex-direction:column;gap:var(--app-space-md)}.danger-zone__confirm-text{margin:0;font-size:var(--app-font-sm)}.danger-zone__steps{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:var(--app-space-md)}.danger-zone__actions{display:flex;gap:var(--app-space-md)}.danger-zone__backups{margin-top:var(--app-space-lg);padding-top:var(--app-space-md);border-top:1px solid var(--wsp-border, #d0d0d0)}.danger-zone__tabs{display:flex;gap:var(--app-space-xs, .25rem);border-bottom:1px solid var(--wsp-border, #d0d0d0);margin-bottom:var(--app-space-md)}.danger-zone__tab{border:none;background:none;font:inherit;font-weight:600;font-size:var(--app-font-sm);padding:.5rem .9rem;cursor:pointer;color:inherit;opacity:.6;border-bottom:2px solid transparent}.danger-zone__tab--active{opacity:1;border-bottom-color:var(--wsp-red)}.danger-zone__tab-panel{display:flex;flex-direction:column;gap:var(--app-space-md)}.danger-zone__upload{margin-top:var(--app-space-md)}.btn-danger{border:none;border-radius:var(--control-radius);padding:.45rem .75rem;font:inherit;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:var(--wsp-red);color:var(--wsp-white)}.btn-danger:hover{background:var(--wsp-red-hover)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-danger-ghost{border:1px solid var(--wsp-red);border-radius:var(--control-radius);padding:.45rem .75rem;font:inherit;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:transparent;color:var(--wsp-red)}.btn-danger-ghost:hover{background:var(--wsp-red);color:var(--wsp-white)}.topbar__admin-link{color:var(--wsp-grey-0);font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none}.topbar__admin-link:hover{color:var(--wsp-white)}.form-grid{display:grid;gap:var(--app-space-md)}.form-field{display:grid;gap:var(--app-space-xs)}.form-field__label{font-size:var(--app-font-sm);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.form-control{width:100%;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:.55rem .65rem;font:inherit;background:var(--surface)}.form-control:focus{outline:2px solid var(--focus-ring-color);outline-offset:1px}.form-error{margin:0;color:var(--wsp-red);font-size:var(--app-font-sm)}.topbar__zoom-dev{font-family:ui-monospace,monospace;font-size:var(--app-font-sm);color:#fbbf24;letter-spacing:.04em}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--app-space-sm);padding:var(--app-space-sm) var(--app-space-md);background:var(--surface-container-low);border-bottom:1px solid var(--wsp-grey-0)}.btn-secondary,.btn-primary{border:none;border-radius:var(--control-radius);padding:.45rem .75rem;font:inherit;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.btn-secondary{background:var(--btn-secondary-bg);color:var(--wsp-black)}.btn-primary{background:var(--wsp-red);color:var(--wsp-white)}.btn-secondary:hover{background:var(--wsp-grey-2);color:var(--wsp-white)}.btn-primary:hover{background:var(--wsp-red-hover)}.btn-secondary.is-active,.btn-primary.is-active{outline:2px solid var(--wsp-black);outline-offset:-2px}.app-workspace{display:flex;flex:1;min-height:0;min-width:0;width:100%;overflow:hidden}.map-view{position:relative;flex:1;min-width:0;min-height:0;overflow:hidden;container-type:inline-size;container-name:map-panel}:root{--map-edit-toolbar-stack: 4.75rem;--map-edit-toolbar-reviewer-stack: 8rem}.map-status-toast-host{position:absolute;left:50%;bottom:calc(var(--app-space-md) + .75rem + var(--map-status-toast-stack, 0px));z-index:5;transform:translate(-50%);display:flex;justify-content:center;width:-moz-max-content;width:max-content;max-width:calc(100% - 2 * var(--app-space-md));pointer-events:none}.map-status-toast{box-sizing:border-box;min-width:12rem;max-width:min(32rem,92vw);padding:.85rem 1.35rem;border-radius:10px;border:1px solid transparent;box-shadow:0 8px 28px #0000002e,0 2px 8px #0000001a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--wsp-font-body);font-size:.9375rem;font-weight:600;line-height:1.35;text-align:center;pointer-events:none;animation:map-status-toast-fade var(--map-status-toast-duration, 2.6s) ease forwards}.map-status-toast__message{display:block;white-space:normal;overflow-wrap:anywhere}.map-status-toast--info{background:#f8f8faf5;border-color:#0000001a;color:#26262a}.map-status-toast--success{background:#e8f6edf5;border-color:#22784847;color:#125430}.map-status-toast--warning{background:#fff6e4f5;border-color:#b46e1452;color:#6e4408}.map-status-toast--error{background:#feececf5;border-color:#b4282852;color:var(--wsp-red)}@keyframes map-status-toast-fade{0%,62%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(6px)}}.map-line-detail__accordion-edit.is-blocked{opacity:.5;cursor:pointer}.map-elevation-hint.maplibregl-popup .maplibregl-popup-content{padding:.3rem .55rem;border-radius:2px;box-shadow:0 1px 6px #0000002e;font-size:var(--app-font-sm);font-weight:600;line-height:1.25;color:var(--wsp-black);pointer-events:none}.map-elevation-hint.maplibregl-popup .maplibregl-popup-tip{display:none}.map-sw-pipe-popup.maplibregl-popup .maplibregl-popup-content{padding:.35rem .6rem;border-radius:2px;box-shadow:0 1px 6px #0000002e;font-size:var(--app-font-sm);line-height:1.3;color:var(--wsp-black)}.map-sw-pipe-popup__line{display:block;white-space:nowrap}.map-sw-pipe-popup__line:first-child{font-weight:700;font-variant-numeric:tabular-nums}.map-edit-elev-pin{pointer-events:none}.map-edit-elev-pin__label{display:block;padding:.15rem .4rem;border-radius:2px;box-shadow:0 1px 6px #0000002e;background:var(--wsp-white);color:var(--wsp-black);font-family:var(--wsp-font-body);font-size:.6875rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;white-space:nowrap}.map-edit-elev-pin--start .map-edit-elev-pin__label{border:1px solid #22c55e}.map-edit-elev-pin--end .map-edit-elev-pin__label{border:1px solid #ef4444}.map-dem-cursor-pin{position:relative;width:16px;height:16px;pointer-events:none}.map-dem-cursor-pin__x{position:absolute;inset:0;display:block;color:#dc2626;filter:drop-shadow(0 0 1px #fff) drop-shadow(0 0 2px #fff)}.map-dem-cursor-pin__label{position:absolute;left:50%;top:100%;transform:translate(-50%);margin-top:.15rem;display:block;padding:.15rem .4rem;border-radius:2px;border:1px solid #dc2626;box-shadow:0 1px 6px #0000002e;background:var(--wsp-white);color:var(--wsp-black);font-family:var(--wsp-font-body);font-size:.6875rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;white-space:nowrap}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;font-size:1.25rem;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-bottom-left-controls{position:absolute;left:var(--app-space-md);bottom:var(--app-space-md);z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:var(--app-space-sm)}.map-background-controls{display:flex;flex-direction:column;align-items:flex-start}.map-background-controls__bottom{display:flex;flex-direction:row;align-items:flex-end;gap:var(--app-space-sm)}.map-background-controls__meter{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.map-background-controls__selector{position:relative;display:flex;flex-direction:column;align-items:flex-start}.map-background-controls__popover{position:absolute;bottom:100%;left:0;margin-bottom:var(--app-space-sm);display:flex;flex-direction:column;align-items:flex-start;gap:var(--app-space-sm);z-index:3}.map-background-controls__btn{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:.125rem;border:none;background:var(--wsp-white);color:var(--wsp-black);box-shadow:0 2px 8px #0000001f,0 0 0 1px #0000001f;cursor:pointer;overflow:hidden;flex-shrink:0;outline:none}.map-background-controls__btn:hover,.map-background-controls__btn:focus-visible{background:var(--surface-container-low)}.map-background-controls__btn.is-active{box-shadow:0 2px 8px #0000001f,0 0 0 2px var(--wsp-red),0 0 0 1px #0000001f}.map-background-controls__btn .map-basemap-swatch__svg,.map-background-controls__btn .map-basemap-swatch__img{width:100%;height:100%;aspect-ratio:auto}.map-background-opacity{display:flex;align-self:flex-start;width:6.5rem;padding:0;margin-bottom:0;background:transparent;border:none;box-shadow:none;opacity:.25;transition:opacity .15s ease}.map-background-opacity:hover,.map-background-opacity:focus-within{opacity:1}.map-background-opacity__slider{width:100%;margin:0;accent-color:var(--wsp-red);cursor:pointer}.map-top-left-controls{position:absolute;left:var(--app-space-md);top:var(--app-space-md);z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:var(--app-space-sm)}.map-top-right-controls{position:absolute;top:calc(10px + 29px + var(--app-space-sm));right:10px;z-index:2;display:flex;flex-direction:column;gap:var(--app-space-sm)}.map-view .maplibregl-ctrl-top-right .maplibregl-ctrl-group{margin:10px 10px 0 0;box-shadow:none;border-radius:0;background:transparent}.map-view .maplibregl-ctrl-top-right .maplibregl-ctrl-compass{width:29px;height:29px;border:none;border-radius:0;box-shadow:0 0 0 1px #0000001f;background:var(--wsp-white)}.map-view .maplibregl-ctrl-top-right .maplibregl-ctrl-compass:hover{background:var(--surface-container-low)}.map-view .maplibregl-ctrl-top-right .maplibregl-ctrl-compass .maplibregl-ctrl-icon{background-color:transparent}.map-side-pane{--map-side-pane-width: 29rem;flex-shrink:0;display:flex;flex-direction:column;width:var(--map-side-pane-width);min-width:var(--map-side-pane-width);min-height:0;background:var(--wsp-white);border-left:1px solid var(--wsp-grey-0)}.map-side-pane.is-collapsed{width:2.5rem;min-width:2.5rem;align-items:center;justify-content:center}.map-side-pane__header{display:flex;align-items:stretch;gap:var(--app-space-xs);flex-shrink:0;min-height:2.75rem;padding:0 var(--app-space-sm) 0 0;border-bottom:1px solid var(--wsp-grey-0);background:var(--wsp-white)}.map-side-pane__tabs{flex:1;display:flex;min-width:0;align-self:stretch}.map-side-pane__tab{flex:1;min-width:0;margin:0;padding:0 var(--app-space-sm);border:none;border-bottom:2px solid transparent;background:transparent;color:var(--wsp-grey-2);font-family:var(--wsp-font-body);font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.map-side-pane__tab:hover,.map-side-pane__tab:focus-visible{color:var(--wsp-black);background:var(--surface-container-low)}.map-side-pane__tab.is-active{color:var(--wsp-black);border-bottom-color:var(--wsp-red)}.map-side-pane__title{flex:1;margin:0;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-3)}.map-side-pane__collapse,.map-side-pane__expand{display:flex;align-items:center;justify-content:center;flex-shrink:0;border:none;background:transparent;cursor:pointer;color:var(--wsp-grey-3)}.map-side-pane__collapse{width:2rem;height:2rem;margin-top:auto;margin-bottom:auto}.map-side-pane__expand{width:100%;align-self:stretch;flex:1}.map-side-pane__expand:hover,.map-side-pane__expand:focus-visible{background:var(--surface-container-low);color:var(--wsp-black)}.map-side-pane__collapse-icon{transform:rotate(-90deg)}.map-side-pane__expand-icon{transform:rotate(90deg)}.map-side-pane__panel{flex:1;display:flex;flex-direction:column;min-height:0;background:var(--wsp-white)}.map-side-pane__tab-panel{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--wsp-white)}.map-side-pane__tab-panel[hidden]{display:none}.map-line-detail{display:flex;flex-direction:column;height:100%;min-height:0}.map-line-detail__body{flex:1;min-height:0;overflow-y:auto;scrollbar-gutter:stable;padding:var(--app-space-sm) .25rem var(--app-space-sm) var(--app-space-sm)}.map-line-detail__empty,.map-line-detail__status{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-line-detail__hint{margin:0 0 var(--app-space-md);font-size:var(--app-font-sm);color:var(--wsp-grey-3)}.map-line-detail__hint kbd{display:inline-block;padding:.05rem .35rem;border:1px solid var(--wsp-grey-1);border-radius:2px;background:var(--surface-container-low);font-size:.6875rem;font-family:inherit;text-transform:uppercase}.map-line-detail__status--error{color:var(--wsp-red)}.map-line-detail__loading-block{display:flex;align-items:center;justify-content:center;gap:var(--app-space-sm);min-height:8rem;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-line-detail__loading-spinner{width:1rem;height:1rem;border:2px solid var(--wsp-grey-0);border-top-color:var(--wsp-red);border-radius:50%;animation:map-profile-spin .7s linear infinite;flex-shrink:0}.map-line-detail__header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-sm);margin-bottom:var(--app-space-md);height:1.375rem;min-height:1.375rem}.map-line-detail__id-row{display:flex;align-items:center;gap:var(--app-space-xs);min-width:0;flex:1 1 auto;height:1.375rem}.map-line-detail__header .map-line-detail__id{display:inline-flex;align-items:center;height:1.375rem;line-height:1;font-size:var(--app-font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:normal}.map-line-detail__header-status{flex-shrink:0}.map-line-detail__id{font-size:var(--app-font-md);font-weight:700;font-variant-numeric:tabular-nums;word-break:break-all}.map-line-detail__prefix{flex-shrink:0;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wsp-grey-2)}.map-line-detail__section+.map-line-detail__section,.map-line-detail__accordion+.map-line-detail__section,.map-line-detail__section+.map-line-detail__accordion{margin-top:var(--app-space-md);padding-top:var(--app-space-md);border-top:1px solid var(--wsp-grey-0)}.map-line-detail__accordion+.map-line-detail__accordion{margin-top:0;padding-top:0;border-top:0}.map-line-detail__accordion-group{display:flex;flex-direction:column;gap:var(--app-space-xs)}.map-line-detail__accordion-group .map-line-detail__accordion{border:1px solid var(--wsp-grey-0);border-radius:var(--control-radius);background:var(--wsp-white)}.map-line-detail__accordion-group .map-line-detail__accordion-header{border-radius:var(--control-radius)}.map-line-detail__accordion-group .map-line-detail__accordion.is-expanded .map-line-detail__accordion-header{border-radius:var(--control-radius) var(--control-radius) 0 0}.map-line-detail__accordion-group+.map-line-detail__section{margin-top:var(--app-space-md);padding-top:var(--app-space-md);border-top:1px solid var(--wsp-grey-0)}.map-line-detail__accordion{border:1px solid var(--wsp-grey-0);border-radius:var(--control-radius);background:var(--wsp-white)}.map-line-detail__accordion-header{display:flex;align-items:stretch;gap:0;border-radius:var(--control-radius);background:var(--surface-container-low)}.map-line-detail__accordion-header.is-expanded{border-radius:var(--control-radius) var(--control-radius) 0 0;border-bottom:1px solid color-mix(in srgb,var(--wsp-grey-1) 28%,var(--wsp-white))}.map-line-detail__accordion-toggle{display:flex;flex:1 1 auto;align-items:center;min-width:0;margin:0;padding:var(--app-space-sm);border:0;border-radius:var(--control-radius) 0 0 var(--control-radius);background:transparent;color:var(--wsp-black);font:inherit;font-size:var(--app-font-sm);font-weight:700;text-align:left;cursor:pointer;transition:background-color .12s ease}.map-line-detail__accordion-header.is-expanded .map-line-detail__accordion-toggle{border-radius:var(--control-radius) 0 0 0}.map-line-detail__accordion-expand{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0;padding:0 var(--app-space-sm);border:0;border-radius:0 var(--control-radius) var(--control-radius) 0;background:transparent;color:var(--wsp-grey-2);cursor:pointer;transition:background-color .12s ease}.map-line-detail__accordion-edit{border-radius:0}.map-line-detail__accordion-actions{display:flex;align-items:stretch;flex-shrink:0}.map-line-detail__accordion-share{border-radius:0}.map-line-detail__accordion-edit.is-active .map-line-detail__accordion-icon{color:var(--wsp-black)}.map-line-detail__accordion-header.is-expanded .map-line-detail__accordion-expand{border-radius:0 var(--control-radius) 0 0}.map-line-detail__accordion-header:hover .map-line-detail__accordion-toggle,.map-line-detail__accordion-header:hover .map-line-detail__accordion-expand,.map-line-detail__accordion-toggle:focus-visible,.map-line-detail__accordion-expand:focus-visible{background:color-mix(in srgb,var(--wsp-grey-1) 22%,var(--wsp-grey-0))}.map-line-detail__accordion-header:active .map-line-detail__accordion-toggle,.map-line-detail__accordion-header:active .map-line-detail__accordion-expand{background:color-mix(in srgb,var(--wsp-grey-1) 32%,var(--wsp-grey-0))}.map-line-detail__accordion-title{letter-spacing:.04em;text-transform:uppercase}.map-line-detail__accordion-icon{flex-shrink:0;font-size:1.125rem;color:var(--wsp-grey-2)}.map-line-detail__accordion-body{padding:var(--app-space-sm) var(--app-space-sm) var(--app-space-sm)}.map-line-detail__section--nested+.map-line-detail__section--nested{margin-top:var(--app-space-sm);padding-top:var(--app-space-sm);border-top:1px solid var(--wsp-grey-0)}.map-line-detail__accordion .map-line-detail__section--nested:first-child{margin-top:0;padding-top:0;border-top:0}.map-line-detail__accordion .map-line-detail__section--nested .map-line-detail__section-title{margin-bottom:.3rem}.map-line-detail__grid--flat{margin:0}.map-line-detail__accordion-body:has(>.map-line-detail__ref-body){padding:0}.map-line-detail__ref-body{overflow:hidden}.map-line-detail__ref-section{padding:.3125rem var(--app-space-sm) .375rem}.map-line-detail__ref-section .map-line-detail__section-title{margin:0 0 .1875rem}.map-line-detail__ref-section-aside{font-weight:600;letter-spacing:normal;text-transform:none}.map-line-detail__ref-metrics{display:flex;align-items:center;gap:.5rem;min-width:0}.map-line-detail__ref-metrics--two .map-line-detail__ref-inline-metric,.map-line-detail__ref-metrics--four .map-line-detail__ref-inline-metric{flex:1 1 0}.map-line-detail__ref-inline-metric{min-width:0;overflow:hidden;font-size:var(--app-font-sm);line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.map-line-detail__ref-inline-metric .map-line-detail__inline-label{margin-right:.25rem}.map-line-detail__ref-inline-metric--total{flex:0 1 auto;padding-left:.5rem;border-left:1px solid var(--wsp-grey-0)}.map-line-detail__ref-status{display:inline-block;padding:1px .3125rem;background:var(--wsp-grey-0);font-size:var(--app-font-sm);font-weight:700;line-height:1.45;text-transform:uppercase}.map-line-detail__ref-activity-line{margin:0;font-size:var(--app-font-sm);line-height:1.45;font-weight:600;color:var(--wsp-black)}.map-line-detail__ref-activity-comment{white-space:pre-wrap}.map-line-detail__review-summary{display:flex;flex-direction:column;gap:.35rem;margin-bottom:var(--app-space-sm)}.map-line-detail__review-summary--live{border-left:2px solid var(--wsp-blue-2);padding-left:.4rem}.map-line-detail__inline-row{margin:0;font-size:var(--app-font-sm);line-height:1.45;color:var(--wsp-black);display:flex;flex-wrap:wrap;align-items:baseline;-moz-column-gap:0;column-gap:0;row-gap:.15rem}.map-line-detail__inline-metric{display:inline-flex;align-items:baseline;gap:.35rem}.map-line-detail__inline-label{color:var(--wsp-grey-2);font-weight:400}.map-line-detail__inline-value{font-weight:600;font-variant-numeric:tabular-nums}.map-line-detail__inline-sep{margin:0 .3rem;color:var(--wsp-grey-1);font-weight:400}.map-line-detail__accordion-body>.map-line-detail__section--nested{margin-top:var(--app-space-sm);padding-top:var(--app-space-sm);border-top:1px solid var(--wsp-grey-0)}.map-line-detail__profile-chart-wrap{display:flex;flex-direction:column;gap:.35rem;min-height:15.75rem}.map-line-detail__profile-chart-stage{position:relative;width:100%;aspect-ratio:320 / 160;flex-shrink:0;overflow:hidden;background:var(--wsp-white);border-radius:var(--control-radius)}.map-line-detail__profile-chart{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;vertical-align:top}.map-line-detail__profile-loading{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;background:color-mix(in srgb,var(--wsp-white) 88%,transparent)}.map-line-detail__profile-spinner{width:1.25rem;height:1.25rem;border:2px solid var(--wsp-grey-0);border-top-color:var(--wsp-red);border-radius:50%;animation:map-profile-spin .7s linear infinite}@keyframes map-profile-spin{to{transform:rotate(360deg)}}.map-line-detail__profile-loading-label{font-size:var(--app-font-xs);color:var(--wsp-grey-2)}.map-line-detail__profile-empty{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-line-detail__profile-empty--centered{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:.5rem;text-align:center}.map-line-detail__profile-grid{stroke:color-mix(in srgb,var(--wsp-grey-0) 80%,var(--wsp-white));stroke-width:1}.map-line-detail__profile-axis{stroke:var(--wsp-grey-2);stroke-width:1.25;stroke-linecap:square}.map-line-detail__profile-axis-label{fill:var(--wsp-grey-2);font-size:8px;font-family:inherit}.map-line-detail__profile-line{stroke-width:1;stroke-linejoin:round;stroke-linecap:round}.map-line-detail__profile-line--original{stroke:var(--wsp-grey-2);stroke-dasharray:4 3;opacity:.85}.map-line-detail__profile-line--current{stroke:var(--wsp-blue-2)}.map-line-detail__profile-rl{stroke-width:.6;opacity:.9}.map-line-detail__profile-rl--start{stroke:#16a34a}.map-line-detail__profile-rl--end{stroke:#dc2626}.map-line-detail__profile-rl--original{stroke-dasharray:1 1.75;stroke-width:.5;opacity:.65}.map-line-detail__profile-rl--current{stroke-dasharray:none;stroke-width:.7;opacity:.9}.map-line-detail__profile-rl-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem 0;margin:0;font-size:11px;font-variant-numeric:tabular-nums}.map-line-detail__profile-rl-meta-item--start{color:#16a34a;font-weight:600}.map-line-detail__profile-rl-meta-item--end{color:#dc2626;font-weight:600}.map-line-detail__profile-rl-meta-sep{margin:0 .35rem;color:var(--wsp-grey-1)}.map-line-detail__profile-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem 0;margin:0;min-height:1.2em;font-size:11px;font-variant-numeric:tabular-nums;color:var(--wsp-black)}.map-line-detail__profile-meta-item{font-weight:500}.map-line-detail__profile-meta-x,.map-line-detail__profile-legend-x{display:inline-block;margin-right:.5rem;color:#dc2626;font-size:10px;font-weight:700;line-height:1}.map-line-detail__profile-meta-sep{margin:0 .35rem;color:var(--wsp-grey-1);font-weight:400}.map-line-detail__profile-cursor-x{stroke:#dc2626;stroke-width:1.25;stroke-linecap:round}.map-line-detail__profile-legend{width:100%;margin:0;border-collapse:collapse;table-layout:fixed;font-size:11px;color:var(--wsp-grey-2)}.map-line-detail__profile-legend td{padding:.15rem .4rem .15rem 0;vertical-align:middle;white-space:nowrap}.map-line-detail__profile-legend-series{width:5.75rem}.map-line-detail__profile-legend-series .map-line-detail__profile-swatch,.map-line-detail__profile-legend-metric .map-line-detail__profile-swatch,.map-line-detail__profile-legend-metric>svg{display:inline-block;vertical-align:middle;margin-right:.3rem;flex-shrink:0}.map-line-detail__profile-legend-label{display:inline-block;min-width:3.4rem;vertical-align:middle}.map-line-detail__profile-legend-value{display:inline-block;min-width:7.2ch;margin-left:.25rem;vertical-align:middle;font-variant-numeric:tabular-nums;font-weight:600;color:var(--wsp-black);text-align:right}.map-line-detail__profile-legend-value--position{min-width:14ch;margin-left:0;text-align:left}.map-line-detail__profile-swatch{display:inline-block;width:14px;height:3px;border-radius:1px}.map-line-detail__profile-swatch--original{background:var(--wsp-grey-2);background:repeating-linear-gradient(90deg,var(--wsp-grey-2) 0 3px,transparent 3px 5px)}.map-line-detail__profile-swatch--current{background:var(--wsp-blue-2)}.map-line-detail__profile-swatch--start{background:#16a34a}.map-line-detail__profile-swatch--end{background:#dc2626}.map-line-detail__profile-swatch--dotted{background:transparent;background-image:repeating-linear-gradient(90deg,currentColor 0 2px,transparent 2px 4px);color:inherit}.map-line-detail__profile-swatch--start.map-line-detail__profile-swatch--dotted{color:#16a34a}.map-line-detail__profile-swatch--end.map-line-detail__profile-swatch--dotted{color:#dc2626}.map-line-detail__qa-pills{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.map-line-detail__qa-pill{display:inline-flex;align-items:center;box-sizing:border-box;padding:.1rem .35rem;border-radius:var(--control-radius);font-size:.6875rem;font-weight:700;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;cursor:default;border:1px solid transparent}.map-line-detail__qa-pill--info{color:#1e4b7a;background:#1e5ba81f;border-color:#1e5ba838}.map-line-detail__qa-pill--warning{color:#8a4b00;background:#e6770024;border-color:#e6770047}.map-line-detail__qa-pill--error{color:#9b1c2f;background:#cb24311f;border-color:#cb243147}.map-line-detail__qa-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.35rem}.map-line-detail__qa-item{padding:.35rem .5rem;font-size:var(--app-font-sm);border-radius:var(--control-radius);background:var(--surface-container-low)}.map-line-detail__qa-item--warn{background:#e677001f}.map-line-detail__qa-item--error{background:#cb24311a}.map-line-detail__section-title{margin:0 0 var(--app-space-sm);font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-2)}.map-line-detail__grid{display:grid;grid-template-columns:minmax(5.5rem,42%) 1fr;gap:.35rem var(--app-space-sm);margin:0}.map-line-detail__row{display:contents}.map-line-detail__label{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-line-detail__label:after{content:": "}.map-line-detail__value{margin:0;font-size:var(--app-font-sm);font-weight:600;font-variant-numeric:tabular-nums;color:var(--wsp-black);text-align:right}.map-line-detail__timeline-wrap{position:relative}.map-line-detail__timeline-wrap.is-fetching .map-line-detail__timeline{opacity:.55}.map-line-detail__timeline-spinner{position:absolute;top:.35rem;right:0;width:.85rem;height:.85rem;border:2px solid var(--wsp-grey-0);border-top-color:var(--wsp-red);border-radius:50%;animation:map-profile-spin .7s linear infinite}.burn-status--placeholder{visibility:hidden}.map-line-detail__header .burn-status--placeholder{visibility:visible;color:transparent;background:var(--surface-container-low);box-shadow:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-line-detail__timeline{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--app-space-sm)}.map-line-detail__timeline-item{padding:var(--app-space-sm);border:1px solid var(--wsp-grey-0);border-radius:var(--control-radius);background:var(--wsp-grey-0)}.map-line-detail__timeline-head{display:flex;justify-content:space-between;gap:var(--app-space-sm);font-size:var(--app-font-sm)}.map-line-detail__timeline-meta{margin-top:.15rem;font-size:var(--app-font-sm);color:var(--wsp-grey-3)}.map-line-detail__timeline-comment{margin:var(--app-space-xs) 0 0;font-size:var(--app-font-sm);color:var(--wsp-black)}.map-line-detail__rejection-comment{margin:0;font-size:var(--app-font-sm);color:var(--wsp-black)}.map-line-detail__review-hint{margin:0 0 var(--app-space-sm);font-size:var(--app-font-sm)}.map-line-detail__review-actions-row{display:flex;align-items:center;gap:var(--app-space-sm);flex-wrap:wrap}.map-line-detail__ref-section .map-line-detail__review-actions-row{margin-top:var(--app-space-xs)}.map-line-detail__review-comment-input{flex:1 1 8rem;min-width:0;height:29px;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:0 .5rem;font:inherit;font-size:var(--app-font-sm);background:var(--control-surface)}.map-line-detail__review-comment-input:focus{outline:none;border-color:var(--wsp-red);box-shadow:0 0 0 1px var(--wsp-red)}.map-line-detail__review-actions-row .map-line-detail__review-buttons{flex-shrink:0}.map-line-detail__review-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:var(--app-space-sm);font-size:var(--app-font-sm)}.map-line-detail__review-textarea{width:100%;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:.5rem;font:inherit;font-size:var(--app-font-sm);resize:vertical}.map-line-detail__review-buttons{display:flex;gap:var(--app-space-sm)}.map-queue-panel{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;background:var(--wsp-white)}.map-queue-panel__header{display:flex;align-items:center;gap:var(--app-space-sm);flex-shrink:0;min-height:2.25rem;padding:0 var(--app-space-md);border-bottom:1px solid var(--wsp-grey-0);background:var(--wsp-white)}.map-queue-panel__title{flex:1;margin:0;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-3)}.map-queue-panel__count{font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-queue-panel__body{display:flex;flex-direction:column;gap:var(--app-space-sm);flex:1;min-height:0;padding:var(--app-space-sm) .25rem var(--app-space-sm) var(--app-space-sm)}.map-queue-panel__filters{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.map-queue-panel__filters-label{font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-grey-2)}.map-queue-panel__filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;padding:2px}.map-queue-panel__chip{border:none;background:var(--surface-container-low);padding:.2rem .55rem;font:inherit;font-size:var(--app-font-sm);font-weight:700;cursor:pointer;box-shadow:0 0 0 1px var(--wsp-grey-0)}.map-queue-panel__chip--R{color:var(--burn-prefix-R, #cb2431);background:color-mix(in srgb,var(--burn-prefix-R, #cb2431) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-prefix-R, #cb2431) 35%,transparent)}.map-queue-panel__chip--G{color:var(--burn-prefix-G, #22863a);background:color-mix(in srgb,var(--burn-prefix-G, #22863a) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-prefix-G, #22863a) 35%,transparent)}.map-queue-panel__chip--O{color:var(--burn-prefix-O, #e67700);background:color-mix(in srgb,var(--burn-prefix-O, #e67700) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-prefix-O, #e67700) 35%,transparent)}.map-queue-panel__chip--pending{color:var(--burn-status-pending, var(--wsp-grey-3));background:color-mix(in srgb,var(--burn-status-pending, #6b7280) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-status-pending, #6b7280) 30%,transparent)}.map-queue-panel__chip--submitted{color:var(--burn-status-submitted, #0066cc);background:color-mix(in srgb,var(--burn-status-submitted, #0066cc) 8%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-status-submitted, #0066cc) 35%,transparent)}.map-queue-panel__chip--modified{color:var(--burn-status-modified, #0052a3);background:color-mix(in srgb,var(--burn-status-modified, #0052a3) 12%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-status-modified, #0052a3) 40%,transparent)}.map-queue-panel__chip--flagged{color:var(--burn-status-flagged, #7b1fa2);background:color-mix(in srgb,var(--burn-status-flagged, #7b1fa2) 12%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-status-flagged, #7b1fa2) 35%,transparent)}.map-queue-panel__chip--accepted{color:var(--burn-status-accepted, #22863a);background:color-mix(in srgb,var(--burn-status-accepted, #22863a) 12%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--burn-status-accepted, #22863a) 35%,transparent)}.map-queue-panel__chip.is-active{box-shadow:0 0 0 1px var(--wsp-red)}.map-queue-panel__pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-sm);flex-shrink:0;padding-top:var(--app-space-xs)}.map-queue-panel__page-btn{border:1px solid var(--wsp-grey-0);background:var(--surface-container-low);padding:.25rem .6rem;font:inherit;font-size:var(--app-font-sm);font-weight:600;cursor:pointer}.map-queue-panel__page-btn:disabled{opacity:.45;cursor:not-allowed}.map-queue-panel__page-info{flex:1;text-align:center;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.burn-prefix--R{color:var(--burn-prefix-R, #cb2431)}.burn-prefix--G{color:var(--burn-prefix-G, #22863a)}.burn-prefix--O{color:var(--burn-prefix-O, #e67700)}.map-queue-panel__search input{width:100%;border:1px solid var(--wsp-grey-0);padding:.35rem .5rem;font:inherit;font-size:var(--app-font-sm)}.map-queue-panel__table-wrap{flex:1;min-height:0;overflow:auto;scrollbar-gutter:stable;border:1px solid var(--wsp-grey-0)}.map-queue-panel__table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;font-size:var(--app-font-sm)}.map-queue-panel__col-id{width:5rem}.map-queue-panel__col-status{width:6.5rem}.map-queue-panel__col-olfp{width:4.25rem}.map-queue-panel__col-elev{width:4.5rem}.map-queue-panel__col-elev-cell{padding-left:.25rem;padding-right:.35rem;font-size:.72rem}.map-queue-panel__col-elev-cell .map-queue-panel__sort{font-size:.72rem;letter-spacing:-.02em}.map-queue-panel__col-score{width:3.25rem}.map-queue-panel__metric{font-variant-numeric:tabular-nums;text-align:right}.map-queue-panel__sort--right{justify-content:flex-end}.map-queue-panel__table th.map-queue-panel__metric,.map-queue-panel__table td.map-queue-panel__metric{text-align:right}.map-queue-panel__table th,.map-queue-panel__table td{padding:.35rem .5rem;text-align:left;border-bottom:1px solid var(--wsp-grey-0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-queue-panel__table th{position:sticky;top:0;z-index:1;background:var(--table-header-bg);color:var(--table-header-fg);font-weight:700;padding:0}.map-queue-panel__sort{display:flex;align-items:center;justify-content:space-between;gap:.35rem;width:100%;border:none;background:transparent;padding:.35rem .5rem;font:inherit;font-weight:700;color:inherit;cursor:pointer;text-align:left}.map-queue-panel__sort.is-active{color:var(--wsp-white)}.map-queue-panel__sort-icon{font-size:.75rem;opacity:.85}.map-queue-panel__row{cursor:pointer}.map-queue-panel__row:hover{background:var(--surface-container-low)}.map-queue-panel__row:focus-visible{outline:2px solid var(--wsp-grey-2);outline-offset:-2px}.map-queue-panel__id{font:inherit;font-weight:400;color:inherit}.map-queue-panel__status{margin:0;font-size:var(--app-font-sm);color:var(--wsp-grey-2)}.map-queue-panel__status--error{color:var(--wsp-red-hover)}.burn-status{display:inline-block;box-sizing:border-box;min-width:6.5rem;padding:.1rem .35rem;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center;background:var(--surface-container-low);color:var(--wsp-grey-3)}.burn-status--pending{background:color-mix(in srgb,var(--burn-status-pending, #6b7280) 12%,transparent);color:var(--burn-status-pending, var(--wsp-grey-3))}.burn-status--submitted{background:color-mix(in srgb,var(--burn-status-submitted, #0066cc) 12%,transparent);color:var(--burn-status-submitted, #0066cc)}.burn-status--modified{background:color-mix(in srgb,var(--burn-status-modified, #0052a3) 18%,transparent);color:var(--burn-status-modified, #0052a3)}.burn-status--flagged{background:color-mix(in srgb,var(--burn-status-flagged, #7b1fa2) 12%,transparent);color:var(--burn-status-flagged, #7b1fa2)}.burn-status--accepted{background:color-mix(in srgb,var(--burn-status-accepted, #22863a) 15%,transparent);color:var(--burn-status-accepted, #22863a)}.burn-status--editing{background:#cb24311f;color:#cb2431}.burn-status--selected{background:#d4a7002e;color:#9a7b00}.map-line-detail__header .burn-status{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:1.375rem;min-width:6.5rem;padding:0 .4rem;line-height:1;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.map-layer-control{flex-shrink:0;min-width:11rem;background:var(--wsp-white);border:1px solid var(--wsp-grey-0);box-shadow:0 2px 8px #0000001f}.map-layer-control__header{display:flex;align-items:center;gap:var(--app-space-sm);min-height:2.75rem;padding:0 var(--app-space-sm) 0 var(--app-space-md)}.map-layer-control__header-icon{flex-shrink:0;font-size:1.125rem}.map-layer-control__title{flex:1;margin:0;font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-3)}.map-layer-control__header-actions{display:flex;align-items:center;gap:.125rem;flex-shrink:0}.map-layer-control__sort-btn.is-active{background:var(--surface-container-low);color:var(--wsp-red)}.map-layer-control__toggle{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;background:transparent;color:var(--wsp-black);cursor:pointer}.map-layer-control__toggle:hover,.map-layer-control__toggle:focus-visible{background:var(--surface-container-low)}.map-layer-control__body{display:flex;flex-direction:column;gap:.35rem;padding:var(--app-space-sm) var(--app-space-md) var(--app-space-md);border-top:1px solid var(--wsp-grey-0)}.map-layer-control__subgroup{display:flex;flex-direction:column;gap:.25rem;margin:0;padding-left:1.5rem}.map-layer-control__group{display:flex;flex-direction:column;gap:.25rem;margin-top:.35rem;padding-top:.35rem;border-top:1px solid var(--wsp-grey-0)}.map-layer-control__group--first{margin-top:0;padding-top:0;border-top:0}.map-layer-control__group-heading{margin-bottom:0}.map-layer-control__group-title{margin:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-2)}.map-layer-control__group-title--inline{margin:0;font-size:var(--app-font-sm);font-weight:600;letter-spacing:normal;text-transform:none;color:var(--wsp-black)}.map-layer-control__subgroup--titled{margin-top:0}.map-layer-control__subgroup-title{margin:0;padding:0;font-size:var(--app-font-sm);font-weight:600;line-height:1.35;color:var(--wsp-black)}.map-layer-control__mode-toggle{display:flex;gap:0;margin:0 0 .2rem;border:1px solid var(--wsp-grey-1);border-radius:0;overflow:hidden;width:-moz-fit-content;width:fit-content}.map-layer-control__mode-btn{margin:0;padding:.15rem .45rem;border:0;background:transparent;color:var(--wsp-grey-2);font-size:.6875rem;font-weight:600;letter-spacing:.02em;line-height:1.35;cursor:pointer}.map-layer-control__mode-btn+.map-layer-control__mode-btn{border-left:1px solid var(--wsp-grey-1)}.map-layer-control__mode-btn.is-active{background:var(--wsp-grey-0);color:var(--wsp-black)}.map-layer-control__mode-btn:disabled{cursor:default;opacity:.6}.map-layer-control__subgroup.is-disabled,.map-layer-control__item.is-disabled{opacity:.45}.map-layer-control__item--sub .map-layer-control__label{font-weight:500}.map-layer-control__item{display:flex;align-items:center;gap:.35rem;min-height:1.25rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.map-layer-control__checkbox{flex-shrink:0;width:.75rem;height:.75rem;margin:0;accent-color:var(--wsp-red);cursor:pointer}.map-layer-control__swatch{flex-shrink:0;width:1.25rem;height:clamp(1px,calc(var(--layer-swatch-width, 1) * 1px),5px);border:none;background-color:var(--layer-swatch-color, var(--wsp-red-hover))}.map-layer-control__swatch--dashed{background:none;background-image:repeating-linear-gradient(90deg,var(--layer-swatch-color, #6b7280) 0,var(--layer-swatch-color, #6b7280) 5px,transparent 5px,transparent 9px)}.map-layer-control__swatch--dotted{background:none;background-image:repeating-linear-gradient(90deg,var(--layer-swatch-color, #6b7280) 0,var(--layer-swatch-color, #6b7280) 2px,transparent 2px,transparent 6px)}.map-layer-control__swatch--outline{height:.85rem;border-top:none;background:#2563eb33;border:1.5px solid var(--layer-swatch-color, #2563eb)}.map-layer-control__swatch--fpa-patch{height:.85rem;border-top:none;background:color-mix(in srgb,var(--layer-swatch-fill, #2563eb) calc(var(--layer-swatch-fill-opacity, .05) * 100%),var(--wsp-white));border:1px solid var(--layer-swatch-line, #2563eb)}.map-layer-control__symbol-sample{display:block;flex-shrink:0;width:.75rem;height:.75rem;background:var(--layer-swatch-color, #059669);box-shadow:0 0 0 1px #fff,0 0 0 2px #0000001f}.map-layer-control__symbol-sample--circle{border-radius:50%}.map-layer-control__symbol-sample--square{border-radius:0}.map-layer-control__symbol-sample--flat{box-shadow:none}.map-layer-control__symbol-sample--outline.map-layer-control__symbol-sample--circle,.map-layer-control__symbol-sample--outline.map-layer-control__symbol-sample--square{background:transparent;box-shadow:none;border:1px solid currentColor;color:var(--wsp-black)}.map-layer-control__symbol-sample--outline.map-layer-control__symbol-sample--triangle{width:.75rem;height:.75rem;color:var(--wsp-black)}.map-layer-control__symbol-sample--triangle{display:block;flex-shrink:0;width:.9rem;height:.9rem;overflow:visible;background:none;box-shadow:none}.map-layer-control__swatch--dot,.map-layer-control__swatch--dot-minmax{width:.75rem;height:.75rem;border-top:none;border-radius:50%;background:var(--layer-swatch-color, #059669);box-shadow:0 0 0 1px #fff,0 0 0 2px #0000001f}.map-layer-control__item--with-style{cursor:default}.map-layer-control__item-label{flex:1;min-width:0;cursor:pointer}.map-layer-control__swatch-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;padding:.1rem .15rem;margin:0;border:none;background:none;cursor:pointer;border-radius:2px}.map-layer-control__swatch-button--on-grey,.map-layer-control__swatch-pad--on-grey{background:var(--wsp-grey-1);border-radius:2px;padding-block:.2rem;padding-inline:.25rem}.map-layer-control__swatch-pad{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.map-layer-control__swatch-button:hover:not(:disabled),.map-layer-control__swatch-button:focus-visible:not(:disabled){outline:2px solid rgb(0 0 0 / 18%);outline-offset:1px}.map-layer-control__swatch-button:disabled{cursor:default;opacity:.45}.layer-style-popover{z-index:20;min-width:11rem}.layer-style-popover__body{gap:var(--app-space-sm)}.layer-style-popover__close{font-size:1.25rem;line-height:1}.layer-style-popover__color{width:100%;height:2rem;padding:.15rem;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);background:var(--control-surface);cursor:pointer}.layer-style-popover__color:focus{outline:2px solid var(--focus-ring-color);outline-offset:1px}.layer-style-popover__range-row{display:flex;align-items:center;gap:var(--app-space-sm)}.layer-style-popover__range{flex:1;margin:0;accent-color:var(--wsp-red)}.layer-style-popover__value{min-width:1.75rem;font-size:var(--app-font-sm);font-weight:600;text-align:right;color:var(--wsp-black)}.layer-style-popover__fieldset{margin:0;padding:0;border:none}.layer-style-popover__style-filters{flex-wrap:wrap}.layer-style-popover__shape-filters{display:flex;gap:var(--app-space-xs)}.layer-style-popover__shape-chip{display:flex;align-items:center;justify-content:center;flex:1;min-width:2.25rem;min-height:2rem;padding:.25rem;border:1px solid var(--wsp-grey-0);background:var(--surface-container-low);font:inherit;cursor:pointer}.layer-style-popover__shape-chip.is-active{border-color:var(--wsp-red);background:var(--wsp-white)}.layer-style-popover__default-btn{width:100%}.layer-style-popover__default-btn:disabled{opacity:.55;cursor:default}.layer-order-popover{z-index:20;min-width:13rem}.layer-order-popover__body{gap:var(--app-space-sm)}.layer-order-popover__close{font-size:1.25rem;line-height:1}.layer-order-popover__hint{margin:0;font-size:var(--app-font-xs);line-height:1.35;color:var(--wsp-grey-3)}.layer-order-popover__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.25rem}.layer-order-popover__row{display:flex;align-items:center;gap:var(--app-space-sm);min-height:2rem;padding:.2rem .35rem;border:1px solid var(--wsp-grey-0);border-radius:var(--control-radius);background:var(--surface-container-low);cursor:grab}.layer-order-popover__row.is-dragging{opacity:.55}.layer-order-popover__handle{display:flex;align-items:center;color:var(--wsp-grey-2);font-size:1.125rem}.layer-order-popover__label{flex:1;font-size:var(--app-font-sm);font-weight:600;color:var(--wsp-black)}.layer-order-popover__default-btn{width:100%}.layer-order-popover__default-btn:disabled{opacity:.55;cursor:default}.map-layer-control__direction-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.25rem;font-family:var(--wsp-font-body);font-size:.8125rem;font-weight:400;line-height:1;color:#000;text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff}.map-layer-control__label{font-size:var(--app-font-sm);font-weight:600;line-height:1.35;color:var(--wsp-black)}.map-scale-bar{display:flex;align-items:flex-end;align-self:flex-start;min-height:auto}.map-scale-bar .maplibregl-ctrl-scale{margin:0;border:none;box-shadow:0 0 0 1px #0000001f;background:var(--wsp-white);color:var(--wsp-black);font-family:var(--wsp-font-body);font-size:.625rem;line-height:1.1;padding:.15rem .35rem .2rem}.map-tool-btn{display:flex;align-items:center;justify-content:center;width:29px;height:29px;padding:0;border:none;background:var(--wsp-white);color:var(--wsp-black);box-shadow:0 0 0 1px #0000001f;cursor:pointer}.map-tool-btn:hover,.map-tool-btn:focus-visible{background:var(--surface-container-low)}.map-tool-btn:disabled{cursor:default;opacity:.55}.map-tool-btn .material-symbols-outlined{font-size:1.125rem}.map-dem-cursor-probe.is-active{box-shadow:0 0 0 2px var(--wsp-red),0 0 0 1px #0000001f}.map-terrain-3d-control{position:relative}.map-terrain-3d-control__popup{position:absolute;right:calc(100% + var(--app-space-sm));bottom:0;z-index:2;min-width:11.5rem;padding:var(--app-space-md);background:var(--wsp-white);border:1px solid var(--wsp-grey-0);box-shadow:0 2px 8px #0000001f;opacity:0;pointer-events:none;transition:opacity .12s ease}.map-terrain-3d-control.is-open .map-terrain-3d-control__popup{opacity:1;pointer-events:auto}.map-terrain-3d-control__popup .map-basemap-control__field--slider{margin-top:0;padding-top:0;border-top:none}.map-terrain-3d.is-active{box-shadow:0 0 0 2px var(--wsp-red),0 0 0 1px #0000001f}.map-basemap-swatch__svg,.map-basemap-swatch__img{display:block;width:100%;aspect-ratio:1;-o-object-fit:cover;object-fit:cover}.map-basemap-control__field{display:flex;flex-direction:column;gap:var(--app-space-xs)}.map-basemap-control__field--slider{margin-top:var(--app-space-md);padding-top:var(--app-space-md);border-top:1px solid var(--wsp-grey-0)}.map-basemap-control__label{display:flex;justify-content:space-between;gap:var(--app-space-sm);font-size:var(--app-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--wsp-grey-3)}.map-basemap-control__value{font-weight:600;letter-spacing:0;text-transform:none;color:var(--wsp-black)}.map-basemap-control__slider{width:100%;accent-color:var(--wsp-red);cursor:pointer}.burn-line-edit-toolbar{position:absolute;left:50%;bottom:calc(var(--app-space-md) + .75rem);z-index:3;transform:translate(-50%);width:-moz-max-content;width:max-content;max-width:calc(100% - 2 * var(--app-space-md));box-sizing:border-box;padding:var(--app-space-sm) var(--app-space-md);background:var(--wsp-white);border:1px solid var(--wsp-grey-0);box-shadow:0 4px 16px #00000024}.burn-line-edit-toolbar__rows{display:flex;flex-direction:column;gap:var(--app-space-sm);max-width:100%}.burn-line-edit-toolbar__tools{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:var(--app-space-sm);max-width:100%}.burn-line-edit-toolbar__submit-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:var(--app-space-sm);flex:0 0 auto;min-width:0}@container map-panel (max-width: 44rem){.burn-line-edit-toolbar__tools{flex-wrap:wrap}}.burn-line-edit-toolbar__sep{width:1px;height:24px;margin:0 var(--app-space-xs);background:var(--wsp-grey-0)}.burn-line-edit-toolbar__icon-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:29px;height:29px;padding:0;border:none;background:var(--wsp-white);color:var(--wsp-black);box-shadow:0 0 0 1px #0000001f;cursor:pointer}.burn-line-edit-toolbar__icon-btn:hover,.burn-line-edit-toolbar__icon-btn:focus-visible{background:var(--surface-container-low)}.burn-line-edit-toolbar__icon-btn.is-active{box-shadow:0 0 0 1px var(--wsp-red)}.burn-line-edit-toolbar__icon-btn--validated .burn-line-edit-toolbar__icon{filter:brightness(0) saturate(100%) invert(33%) sepia(98%) saturate(456%) hue-rotate(103deg) brightness(94%) contrast(88%)}.burn-line-edit-toolbar__icon-btn--validated.is-active{background:#22863a2e;box-shadow:0 0 0 1px #22863a}.burn-line-edit-toolbar__icon-btn--flag .burn-line-edit-toolbar__icon{filter:brightness(0) saturate(100%) invert(36%) sepia(93%) saturate(2876%) hue-rotate(346deg) brightness(102%) contrast(101%)}.burn-line-edit-toolbar__icon-btn--flag.is-active{background:#ff372f2e;box-shadow:0 0 0 1px var(--wsp-red)}.burn-line-edit-toolbar__icon-btn--primary{background:var(--wsp-red)}.burn-line-edit-toolbar__icon-btn--primary:hover,.burn-line-edit-toolbar__icon-btn--primary:focus-visible{background:var(--wsp-red-hover)}.burn-line-edit-toolbar__icon-btn:disabled{cursor:default;color:var(--wsp-grey-1);opacity:.55}.burn-line-edit-toolbar__icon{display:block;width:1rem;height:1rem;flex-shrink:0;-o-object-fit:contain;object-fit:contain;filter:brightness(0)}.burn-line-edit-toolbar__icon--inverted{filter:brightness(0) invert(1)}.burn-line-edit-toolbar__icon-btn .material-symbols-outlined{font-size:1.125rem}.burn-line-edit-toolbar__comment-input{flex:1 1 6rem;width:auto;min-width:0;max-width:11rem;height:29px;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:0 .5rem;font:inherit;font-size:var(--app-font-sm);background:var(--control-surface)}.burn-line-edit-toolbar__comment-input:focus{outline:none;border-color:var(--wsp-red);box-shadow:0 0 0 1px var(--wsp-red)}.burn-line-edit-toolbar__reviewer-select{flex:0 1 5.5rem;min-width:0;max-width:7.5rem;height:29px;border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:0 .35rem;font:inherit;font-size:var(--app-font-sm);background:var(--control-surface)}.burn-line-edit-toolbar__reviewer-select:disabled{opacity:.55;cursor:not-allowed}.burn-line-edit-toolbar__reviewer-select:focus{outline:none;border-color:var(--wsp-red);box-shadow:0 0 0 1px var(--wsp-red)}.burn-line-edit-toolbar__field{display:flex;flex-direction:column;gap:.2rem;min-width:9rem}.burn-line-edit-toolbar__field-label{font-size:.625rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--wsp-grey-3)}.burn-line-edit-toolbar__reviewer-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:center;gap:var(--app-space-sm);width:100%;padding-top:var(--app-space-sm);border-top:1px solid var(--wsp-grey-0)}.burn-line-edit-toolbar__reviewer-label{flex-shrink:0;font-size:var(--app-font-sm);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--wsp-grey-3);white-space:nowrap}.burn-line-edit-toolbar__reviewer-row .map-line-detail__review-buttons{flex-shrink:0}.burn-line-edit-toolbar__reviewer-comment{flex:1 1 12rem;min-width:10rem;max-width:24rem}label.toolbar-label{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--app-font-sm);text-transform:uppercase;letter-spacing:.04em}select.toolbar-select{border:1px solid var(--wsp-grey-1);border-radius:var(--control-radius);padding:.35rem .5rem;font:inherit;font-size:var(--app-font-sm);background:var(--control-surface)}select.toolbar-select:focus{background:var(--control-surface-focus);color:var(--wsp-white)}.maplibregl-map{font-family:var(--wsp-font-body)}.maplibregl-canvas-container.maplibregl-interactive,.maplibregl-canvas{cursor:default!important}.maplibregl-ctrl-attrib:not(.is-user-open) .maplibregl-ctrl-attrib-inner{display:none!important}.maplibregl-ctrl-attrib.maplibregl-compact:not(.is-user-open){padding:2px 24px 2px 0!important}.maplibregl-ctrl-attrib.is-user-open.maplibregl-compact{padding:2px 28px 2px 8px!important}
