/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.inline{display:inline}.flex-grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.uppercase{text-transform:uppercase}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{color:oklch(99% .01 108);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;--ink:oklch(99% .01 108);--muted:oklch(75% .015 127);--paper:oklch(20% .02 127);--paper-deep:oklch(12% .01 127);--panel:#1c2115;--panel-raised:oklch(25% .025 127);--line:#434a3b;--green:oklch(56% .16 154);--green-dark:oklch(40% .1 154);--green-pale:#164125;--amber:oklch(64% .16 154);--danger:oklch(66% .18 28);--shadow:0 24px 70px #00000057;--font-heading:"League Spartan", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, monospace;background:oklch(20% .02 127);font-family:Montserrat,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html,body{overflow-x:clip}body{background-color:var(--paper);background-image:linear-gradient(to right, var(--green-dark) 1px, transparent 1px), linear-gradient(to bottom, var(--green-dark) 1px, transparent 1px), radial-gradient(900px circle at 8% -10%, var(--green), transparent 62%);min-width:320px}@supports (color:color-mix(in lab, red, red)){body{background-image:linear-gradient(to right, color-mix(in srgb, var(--green-dark), transparent 88%) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--green-dark), transparent 88%) 1px, transparent 1px), radial-gradient(900px circle at 8% -10%, color-mix(in srgb, var(--green), transparent 90%), transparent 62%)}}body{background-size:40px 40px,40px 40px,auto;background-attachment:fixed}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-heading);font-weight:600}:focus-visible{outline:3px solid var(--green)}@supports (color:color-mix(in lab, red, red)){:focus-visible{outline:3px solid color-mix(in srgb, var(--green) 72%, white)}}:focus-visible{outline-offset:3px}.eyebrow{color:var(--green);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.brand-mark{aspect-ratio:1;color:#faf9f3;background:var(--green);border-radius:.6rem;place-items:center;width:2.65rem;font-size:1.1rem;font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #fff3}.loading-screen,.message-screen{min-height:100dvh;padding:max(2rem, env(safe-area-inset-top)) clamp(1.5rem, 7vw, 7rem) max(2rem, env(safe-area-inset-bottom));background:linear-gradient(90deg, #1763420f 1px, transparent 1px) 0 0 / 3rem 3rem, var(--paper);align-content:center;justify-items:start;gap:.85rem;display:grid}.loading-screen p{color:var(--muted);margin:0;font-weight:700}.loading-line{background:var(--line);width:min(18rem,70vw);height:3px;overflow:hidden}.loading-line span{background:var(--amber);width:40%;height:100%;animation:1.2s ease-in-out infinite alternate loading;display:block}@keyframes loading{to{transform:translate(150%)}}.login-screen{grid-template-columns:minmax(0,1.1fr) minmax(25rem,.9fr);min-height:100dvh;display:grid}.login-brand-panel{min-height:100dvh;padding:max(2.2rem, env(safe-area-inset-top)) clamp(2rem, 6vw, 6rem) max(2.2rem, env(safe-area-inset-bottom));color:#f9f7ee;background:var(--green-dark);flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.login-brand-panel .brand-mark{background:var(--amber);color:var(--green-dark)}.login-brand-panel .eyebrow{color:#bcd3c3;margin-bottom:1rem}.login-brand-panel h1{z-index:1;letter-spacing:-.065em;max-width:11ch;margin:0;font-size:clamp(3rem,6vw,6.6rem);line-height:.91;position:relative}.login-supporting{z-index:1;color:#c8d6cb;max-width:34rem;margin:0;font-size:clamp(1rem,1.8vw,1.25rem);line-height:1.5;position:relative}.floor-lines{opacity:.18;height:42%;position:absolute;inset:auto -8% 10% 38%;transform:rotate(-12deg)}.floor-lines i{border:3px solid #f2b450;display:block;position:absolute}.floor-lines i:first-child{inset:0 5% 45% 0}.floor-lines i:nth-child(2){inset:30% 28% 20% 15%}.floor-lines i:nth-child(3){inset:12% 0 58% 64%}.floor-lines i:nth-child(4){inset:75% 5% 0 40%}.login-action-panel{background:var(--paper);place-items:center;padding:2rem;display:grid}.login-card{width:min(26rem,100%)}.login-icon{aspect-ratio:1;border:1px solid var(--line);background:var(--panel);width:3.2rem;color:var(--green);border-radius:50%;place-items:center;margin-bottom:2rem;display:grid}.login-card h2{letter-spacing:-.045em;margin:.55rem 0 .8rem;font-size:clamp(2rem,4vw,3rem)}.login-card>p:not(.eyebrow,.inline-error){color:var(--muted);margin:0 0 2rem;line-height:1.55}.inline-error{color:var(--danger);background:#f7e1de;border-radius:.5rem;padding:.75rem}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:.55rem;justify-content:center;align-items:center;gap:.6rem;min-height:2.8rem;padding:.75rem 1rem;font-weight:800;display:inline-flex}.secondary-button{border:1px solid var(--line);background:var(--panel)}.app-frame{background:var(--paper);min-height:100dvh;overflow-x:clip}.topbar{z-index:20;height:4.4rem;padding:env(safe-area-inset-top) max(1.1rem, env(safe-area-inset-right)) 0 max(1.1rem, env(safe-area-inset-left));border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfaf5eb;justify-content:space-between;align-items:center;display:flex;position:relative}.brand-link{align-items:center;gap:.7rem;display:flex}.brand-link>span:last-child{display:grid}.topbar-walkk-logo{object-fit:contain;width:3.2rem;height:2.25rem}.brand-link strong{font-size:.92rem}.brand-link small{color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-size:.68rem}.topbar-actions{align-items:center;gap:.75rem;margin-left:auto;display:flex}.topbar-actions .test-mode-badge{margin-left:0}.operator-profile{align-items:center;gap:.6rem;display:flex}.operator-copy{justify-items:end;line-height:1.15;display:grid}.operator-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:16rem;font-size:.78rem;overflow:hidden}.operator-copy small{max-width:16rem;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.operator-avatar{aspect-ratio:1;border:1px solid var(--green);place-items:center;width:2.1rem;display:grid}@supports (color:color-mix(in lab, red, red)){.operator-avatar{border:1px solid color-mix(in srgb, var(--green), transparent 48%)}}.operator-avatar{color:var(--green);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.operator-avatar{color:color-mix(in srgb, var(--green), white 28%)}}.operator-avatar{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.operator-avatar{background:color-mix(in srgb, var(--green), transparent 88%)}}.operator-avatar{font-family:var(--font-mono);font-size:.68rem;font-weight:800}.logout-button{aspect-ratio:1;border:1px solid var(--line);width:2.1rem;color:var(--muted);background:var(--panel);cursor:pointer;border-radius:50%;place-items:center;display:grid}.logout-button:hover{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.logout-button:hover{border-color:color-mix(in srgb, var(--green), transparent 38%)}}.logout-button:hover{color:var(--ink);background:var(--panel-raised)}.logout-button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.connection-pill{border-radius:999px;align-items:center;gap:.4rem;min-height:2rem;padding:0 .7rem;font-size:.75rem;font-weight:800;display:flex}.connection-pill.is-online{color:var(--green);background:var(--green-pale)}.test-mode-badge{border:1px solid var(--green);margin-left:auto}@supports (color:color-mix(in lab, red, red)){.test-mode-badge{border:1px solid color-mix(in srgb, var(--green), transparent 45%)}}.test-mode-badge{color:var(--green);border-radius:999px;padding:.35rem .65rem}@supports (color:color-mix(in lab, red, red)){.test-mode-badge{color:color-mix(in srgb, var(--green), white 30%)}}.test-mode-badge{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.test-mode-badge{background:color-mix(in srgb, var(--green), transparent 88%)}}.test-mode-badge{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.65rem;font-weight:800}.app-body{grid-template-columns:4.5rem minmax(0,1fr);min-height:calc(100dvh - 4.4rem);display:grid}.side-rail{z-index:10;border-right:1px solid var(--line);background:var(--panel);flex-direction:column;gap:.5rem;padding:1rem .55rem;display:flex;position:relative}.side-rail a,.rail-disabled{min-height:3.6rem;color:var(--muted);border-radius:.6rem;place-items:center;gap:.2rem;font-size:.65rem;font-weight:700;display:grid}.side-rail a.active{color:#fff;background:var(--green)}.rail-disabled{opacity:.45}.route-stage{min-width:0}.page{min-height:calc(100dvh - 4.4rem);padding:clamp(2rem,6vw,5.5rem)}.page-heading{max-width:45rem}.page-heading h1{letter-spacing:-.055em;margin:.5rem 0 .8rem;font-size:clamp(2.5rem,6vw,5rem);line-height:.98}.page-heading>p:last-child{max-width:39rem;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.55}.status-copy,.empty-copy{color:var(--muted)}.deployment-grid{grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr));gap:1rem;margin-top:clamp(2rem,5vw,4rem);display:grid}.deployment-tile{border:1px solid var(--line);background:var(--panel);border-radius:.8rem;grid-template-rows:1fr auto;grid-template-columns:auto 1fr auto;align-items:start;gap:1rem;min-height:14rem;padding:1.3rem;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden}.deployment-tile:hover{box-shadow:var(--shadow);border-color:#94a997;transform:translateY(-3px)}.deployment-index{color:#17634212;font-size:5rem;font-weight:900;line-height:1;position:absolute;top:.2rem;right:.8rem}.deployment-icon{aspect-ratio:1;width:3rem;color:var(--green);background:var(--green-pale);border-radius:.6rem;place-items:center;display:grid}.deployment-tile h2{letter-spacing:-.025em;margin:.15rem 0 .45rem;font-size:1.35rem;position:relative}.deployment-tile p{color:var(--muted);text-transform:capitalize;align-items:center;gap:.3rem;margin:0;font-size:.82rem;display:flex}.status-dot{color:var(--muted);text-transform:capitalize;align-self:end;align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;display:flex}.status-dot i{aspect-ratio:1;background:#2ca06c;border-radius:50%;width:.5rem;box-shadow:0 0 0 4px #dceade}.tile-arrow{color:var(--green);align-self:end}.error-panel{border-left:4px solid var(--danger);background:#f7e1de;gap:.5rem;max-width:40rem;margin-top:2rem;padding:1rem;display:grid}.error-panel button{background:0 0;border:1px solid;border-radius:.4rem;justify-self:start;min-height:2.75rem;padding:0 1rem;font-weight:800}.map-workspace{grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);height:calc(100dvh - 4.4rem);display:grid;overflow:hidden}.target-panel{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;min-height:0;display:flex}.target-heading{border-bottom:1px solid var(--line);align-items:center;gap:.9rem;padding:1.2rem;display:flex}.target-heading>a{aspect-ratio:1;border:1px solid var(--line);border-radius:.5rem;flex:none;place-items:center;width:2.75rem;display:grid}.target-heading h1{text-overflow:ellipsis;white-space:nowrap;margin:.25rem 0 0;font-size:1.05rem;overflow:hidden}.target-heading>div{min-width:0}.search-field{border:1px solid var(--line);min-height:3rem;color:var(--muted);background:#fff;border-radius:.55rem;align-items:center;gap:.55rem;margin:.8rem;padding:0 .75rem;display:flex}.search-field:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #1763421f}.search-field input{background:0 0;border:0;outline:0;flex:1;min-width:0}.search-field button{cursor:pointer;background:0 0;border:0;place-items:center;width:2.75rem;height:2.75rem;display:grid}.target-list{min-height:0;padding:0 .8rem 1rem;overflow-y:auto}.target-row{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;width:100%;min-height:4.6rem;display:grid}.target-row.selected{background:var(--green-pale);border:1px solid #9ab5a1;border-radius:.55rem;margin:.35rem 0;padding:0 .6rem}.target-pin{aspect-ratio:1;width:2.2rem;color:var(--green);background:#e5eee6;border-radius:50%;place-items:center;display:grid}.target-row>span:nth-child(2){gap:.25rem;min-width:0;display:grid}.target-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.target-row small{color:var(--muted);font-size:.73rem}.map-stage{background:#dfe5dc;min-width:0;min-height:0;position:relative}.map-toolbar{z-index:5;pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:.8rem;left:.8rem;right:.8rem}.map-toolbar span{background:#fbfaf5eb;border:1px solid #252a2426;border-radius:999px;align-items:center;gap:.4rem;min-height:2.2rem;padding:0 .75rem;font-size:.72rem;font-weight:800;display:flex;box-shadow:0 4px 18px #252a241a}.map-canvas,.mappedin-view{width:100%;height:100%}.map-message{height:100%;color:var(--muted);text-align:center;background:#e8ece5;place-items:center;padding:2rem;font-weight:700;display:grid}.map-error{color:var(--danger)}.mappedin-floor-selector{z-index:8;width:11rem;position:absolute;top:1rem;right:1rem}.mappedin-floor-trigger{border:1px solid var(--line);width:100%;height:2.75rem;color:var(--ink);background:var(--paper-deep);border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;padding:0 .75rem;display:flex}@supports (color:color-mix(in lab, red, red)){.mappedin-floor-trigger{background:color-mix(in srgb, var(--paper-deep), transparent 5%)}}.mappedin-floor-trigger{text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.875rem;font-weight:700;box-shadow:0 12px 28px #00000038}.mappedin-floor-trigger span,.mappedin-floor-options span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mappedin-floor-trigger svg{color:var(--muted);flex:none;transition:transform .15s}.mappedin-floor-trigger svg.open{transform:rotate(180deg)}.mappedin-floor-options{border:1px solid var(--line);max-height:14rem;color:var(--ink);background:var(--paper-deep);border-radius:.75rem;margin-top:.5rem;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.mappedin-floor-options{background:color-mix(in srgb, var(--paper-deep), transparent 3%)}}.mappedin-floor-options{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 18px 44px #00000047}.mappedin-floor-options button{border:0;border-bottom:1px solid var(--line);width:100%;height:2.75rem;color:var(--ink);text-align:left;cursor:pointer;background:0 0;align-items:center;padding:0 .75rem;font-size:.875rem;display:flex}.mappedin-floor-options button:last-child{border-bottom:0}.mappedin-floor-options button:hover{background:var(--panel-raised)}.mappedin-floor-options button.selected{color:#fff;background:var(--green)}.schematic-map{background:radial-gradient(circle,#faf9f3 0 1px,#0000 1.5px) 0 0/22px 22px,#e5e9e1;width:100%;height:100%;position:relative;overflow:hidden}.floor-outline{background:#fbfaf5b3;border:3px solid #aebaae;position:absolute;box-shadow:0 18px 40px #252a2414}.floor-outline-a{clip-path:polygon(0 0,85% 0,85% 18%,100% 18%,100% 100%,15% 100%,15% 80%,0 80%);inset:13% 12% 16% 9%}.floor-outline-b{background:0 0;border-width:1px;inset:22% 26% 27% 21%}.floor-aisle{background:#edf0eb;border:2px solid #c1c9bf;width:8%;height:46%;position:absolute;top:27%}.aisle-one{left:33%}.aisle-two{left:49%}.aisle-three{left:65%}.map-node{z-index:3;background:var(--green);color:#fff;cursor:pointer;border:3px solid #fff;border-radius:50%;place-items:center;min-width:2.75rem;min-height:2.75rem;font-size:.65rem;font-weight:900;transition:transform .15s,background .15s;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 4px 14px #0e432c4d}.map-node:hover,.map-node.selected{background:var(--amber);color:var(--green-dark);transform:translate(-50%,-50%)scale(1.13)}.map-compass{z-index:2;aspect-ratio:1;background:var(--panel);border-radius:50%;place-items:center;width:2.7rem;font-size:.7rem;display:grid;position:absolute;top:4.2rem;right:1rem;box-shadow:0 4px 16px #252a241f}.map-compass span{background:var(--green);width:2px;height:1rem;position:absolute;bottom:.25rem}.demo-map-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800;position:absolute;bottom:1rem;right:1rem}.selection-dock{z-index:6;right:1rem;bottom:max(1rem, env(safe-area-inset-bottom));min-height:4.4rem;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fbfaf5f2;border:1px solid #252a2426;border-radius:.75rem;place-items:center;padding:.8rem 1rem;display:grid;position:absolute;left:1rem}.selection-dock>p{color:var(--muted);align-items:center;gap:.55rem;margin:0;font-weight:700;display:flex}.selection-dock.has-selection{grid-template-columns:auto 1fr auto;gap:.9rem}.selection-number{aspect-ratio:1;background:var(--amber);width:2.8rem;color:var(--green-dark);border-radius:.5rem;place-items:center;font-size:.75rem;font-weight:900;display:grid}.selection-dock>span:nth-child(2){min-width:0;display:grid}.selection-dock small{color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:.63rem;font-weight:900}.selection-dock strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selection-dock em{color:var(--muted);font-size:.72rem;font-style:normal}.message-screen h1{letter-spacing:-.055em;max-width:14ch;margin:0;font-size:clamp(2.4rem,6vw,5rem);line-height:.98}.message-screen>p:not(.eyebrow){max-width:34rem;color:var(--muted);line-height:1.5}.compact-message{min-height:calc(100dvh - 4.4rem)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.scanner-workspace{background:#15211a;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1.45fr) minmax(19rem,.55fr);min-height:calc(100dvh - 4.4rem);display:grid}.scanner-header{color:#f8f7ef;background:#102c20;border-bottom:1px solid #ffffff1f;grid-column:1/-1;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;min-height:5.3rem;padding:.8rem 1.2rem;display:grid}.scanner-header>a{aspect-ratio:1;border:1px solid #ffffff38;border-radius:.55rem;place-items:center;width:2.8rem;display:grid}.scanner-header>div:nth-child(2){min-width:0}.scanner-header .eyebrow{color:#9dc2a8}.scanner-header h1{text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0;font-size:1.2rem;overflow:hidden}.scanner-header div>span{color:#b9c9be;align-items:center;gap:.3rem;font-size:.74rem;display:flex}.scan-count{justify-items:end;min-width:4.3rem;display:grid}.scan-count-button{cursor:pointer;background:0 0;border:0;min-height:2.8rem;padding:0}.scan-count-button:hover small{color:var(--ink)}.scan-count strong{color:var(--amber);font-size:1.65rem;line-height:1}.scan-count small{color:#9dc2a8;text-transform:uppercase;font-size:.65rem;font-weight:800}.camera-stage{background:radial-gradient(circle,#244335,#101b15 72%);min-height:32rem;position:relative;overflow:hidden}.camera-stage video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.camera-empty{color:#fff;text-align:center;align-content:center;justify-items:center;padding:2rem;display:grid;position:absolute;inset:0}.camera-empty>span{aspect-ratio:1;width:5rem;color:var(--amber);background:#ffffff0f;border:1px solid #ffffff40;border-radius:50%;place-items:center;display:grid}.camera-empty h2{letter-spacing:-.045em;margin:1.2rem 0 .4rem;font-size:clamp(2rem,4vw,3.2rem)}.camera-empty p{color:#bac9bf;max-width:28rem;margin:0 0 1.4rem;line-height:1.5}.camera-button,.camera-controls button{background:var(--amber);min-height:3rem;color:var(--green-dark);cursor:pointer;border:0;border-radius:.55rem;align-items:center;gap:.55rem;padding:0 1.1rem;font-weight:900;display:inline-flex}.camera-button:disabled{opacity:.55;cursor:wait}.camera-controls{z-index:4;gap:.5rem;display:flex;position:absolute;top:1rem;right:1rem}.camera-controls button{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#102c20db}.camera-source{z-index:4;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#08140ed1;border-radius:.55rem;align-items:center;gap:.55rem;max-width:min(28rem,100% - 13rem);padding:.65rem .8rem;display:flex;position:absolute;top:1rem;left:1rem}.camera-source span{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:800;overflow:hidden}.camera-source small{color:#b9c9be;font:.66rem var(--font-mono);flex:none}.camera-source select{color:#fff;background:#102c20;border:1px solid #ffffff38;border-radius:.35rem;min-width:8rem;min-height:2rem;padding:0 1.8rem 0 .5rem;font-size:.72rem}.camera-grid{z-index:2;pointer-events:none;position:absolute;inset:22% 15%}.camera-grid i{border-color:var(--amber);border-style:solid;width:3rem;height:3rem;position:absolute}.camera-grid i:first-child{border-width:3px 0 0 3px;top:0;left:0}.camera-grid i:nth-child(2){border-width:3px 3px 0 0;top:0;right:0}.camera-grid i:nth-child(3){border-width:0 0 3px 3px;bottom:0;left:0}.camera-grid i:nth-child(4){border-width:0 3px 3px 0;bottom:0;right:0}.camera-grid span{background:var(--amber);height:2px;box-shadow:0 0 16px var(--amber);animation:1.8s ease-in-out infinite alternate scanner-line;position:absolute;top:50%;left:8%;right:8%}@keyframes scanner-line{0%{transform:translateY(-4rem)}to{transform:translateY(4rem)}}.camera-error{z-index:4;color:#ffd8d4;background:#230d0be0;border-left:3px solid #ee7d70;margin:0;padding:.8rem;font-size:.82rem;position:absolute;bottom:1rem;left:1rem;right:1rem}.camera-warning{z-index:4;color:#ffe9b8;background:#2a1d08eb;border-left:3px solid #f0b648;margin:0;padding:.8rem;font-size:.82rem;position:absolute;bottom:1rem;left:1rem;right:1rem}.capture-panel{background:var(--panel);flex-direction:column;padding:clamp(1.3rem,3vw,2.4rem);display:flex}.capture-intro h2{letter-spacing:-.035em;margin:.4rem 0 .6rem;font-size:1.65rem}.capture-intro>p:not(.eyebrow){color:var(--muted);margin:0;font-size:.84rem;line-height:1.5}.scan-note-toggle{color:var(--ink);cursor:pointer;align-items:center;gap:.65rem;margin-top:1.1rem;font-size:.78rem;font-weight:700;display:flex}.scan-note-toggle input{width:1.1rem;height:1.1rem;accent-color:var(--green)}.manual-form{gap:.65rem;margin-top:2rem;display:grid}.manual-form label{color:var(--muted);align-items:center;gap:.45rem;font-size:.75rem;font-weight:800;display:flex}.manual-form input{border:1px solid var(--line);background:#fff;border-radius:.5rem;width:100%;min-height:3.2rem;padding:0 .8rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.manual-form input:focus{border-color:var(--green);outline:3px solid #1763421f}.manual-form .secondary-button{width:100%}.manual-form button:disabled,.scanner-actions button:disabled{opacity:.45;cursor:not-allowed}.scanner-actions{gap:.65rem;margin-top:auto;padding-top:2rem;display:grid}.scanner-actions small{color:var(--muted);text-align:center}.scan-note-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000a6;place-items:end center;padding:1rem;display:grid;position:fixed;inset:0}.scan-note-sheet{border:1px solid var(--line);background:var(--panel-raised);border-radius:.9rem;gap:.75rem;width:min(100%,34rem);padding:1.25rem;display:grid;box-shadow:0 24px 70px #0000008c}.scan-note-sheet h2{margin:0;font-size:1.6rem}.scan-note-sheet code{overflow-wrap:anywhere;color:var(--green)}@supports (color:color-mix(in lab, red, red)){.scan-note-sheet code{color:color-mix(in srgb, var(--green), white 28%)}}.scan-note-sheet label{color:var(--muted);margin-top:.35rem;font-size:.75rem;font-weight:800}.scan-note-sheet textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);background:var(--paper-deep);font:inherit;border-radius:.55rem;padding:.75rem}.scan-note-sheet textarea:focus{border-color:var(--green);outline:3px solid var(--green)}@supports (color:color-mix(in lab, red, red)){.scan-note-sheet textarea:focus{outline:3px solid color-mix(in srgb, var(--green), transparent 82%)}}.scan-note-sheet>small{color:var(--muted);text-align:right}.scan-note-actions{justify-content:flex-end;gap:.65rem;margin-top:.25rem;display:flex}.review-page,.status-page{min-height:calc(100dvh - 4.4rem);padding:clamp(1.2rem,5vw,4.5rem)}.review-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.review-heading h1{letter-spacing:-.055em;margin:.45rem 0 .6rem;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1}.review-heading p:last-child{color:var(--muted);align-items:center;gap:.35rem;margin:0;display:flex}.review-layout{grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);align-items:start;gap:clamp(1rem,3vw,2.5rem);margin-top:2.5rem;display:grid}.scan-table-wrap{border:1px solid var(--line);background:var(--panel);border-radius:.7rem;overflow-x:auto}.scan-table{border-collapse:collapse;width:100%}.scan-table th{border-bottom:1px solid var(--line);color:var(--muted);letter-spacing:.08em;text-align:left;text-transform:uppercase;padding:.8rem;font-size:.68rem}.scan-table td{border-bottom:1px solid var(--line);min-height:3.8rem;padding:.85rem;font-size:.82rem}.scan-table tbody tr:last-child td{border-bottom:0}.scan-table td:first-child{color:var(--green);font-weight:900}.scan-table td:nth-child(2){gap:.2rem;display:grid}.scan-table td:nth-child(2) strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9rem}.scan-table td:nth-child(2) small,.source-cell{color:var(--muted)}.scan-note-preview{max-width:36rem;color:var(--muted);white-space:normal;font-size:.76rem;line-height:1.4}.scan-table td:last-child{text-align:right}.scan-table td button{width:2.75rem;height:2.75rem;color:var(--danger);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;display:inline-grid}.scan-table td button:disabled{opacity:.3;cursor:not-allowed}.empty-review{min-height:12rem;color:var(--muted);place-content:center;justify-items:center;display:grid}.submission-card{background:#eaf1e8;border:1px solid #bdcdbf;border-radius:.75rem;padding:1.4rem;position:sticky;top:1rem}.submission-icon{aspect-ratio:1;background:var(--green);color:#fff;border-radius:.6rem;place-items:center;width:3.4rem;margin-bottom:1.2rem;display:grid}.submission-card h2{letter-spacing:-.035em;margin:.4rem 0 .7rem;font-size:1.65rem}.submission-card>p:not(.eyebrow){color:#58675b;font-size:.86rem;line-height:1.5}.submission-card dl{border-top:1px solid #bdcdbf;margin:1.2rem 0}.submission-card dl div{border-bottom:1px solid #bdcdbf;gap:.25rem;padding:.75rem 0;display:grid}.submission-card dt{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:800}.submission-card dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.75rem;font-weight:800;overflow:hidden}.submission-card .primary-button{width:100%}.submission-card>small{color:var(--muted);text-align:center;margin-top:.8rem;font-size:.7rem;line-height:1.4;display:block}.submit-error{color:var(--danger);background:#f7e1de;border-radius:.45rem;gap:.5rem;margin-bottom:.9rem;padding:.75rem;font-size:.78rem;display:flex}.status-page{grid-template-columns:minmax(0,1fr) minmax(18rem,27rem);align-items:center;gap:clamp(1.5rem,5vw,5rem);display:grid}.status-hero{max-width:52rem}.status-icon{aspect-ratio:1;border-radius:50%;place-items:center;width:5.2rem;margin-bottom:2rem;display:grid}.status-hero.success .status-icon{color:var(--green);background:var(--green-pale)}.status-hero.pending .status-icon{color:#85550b;background:#f6e5c3}.status-hero h1{letter-spacing:-.065em;max-width:13ch;margin:.65rem 0 1rem;font-size:clamp(3rem,7vw,6.5rem);line-height:.92}.status-hero>p:not(.eyebrow){max-width:39rem;color:var(--muted);font-size:1.05rem;line-height:1.55}.status-actions{flex-wrap:wrap;gap:.7rem;margin-top:2rem;display:flex}.receipt{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:.75rem;padding:1.5rem}.receipt dl{margin:1.2rem 0 0}.receipt dl div{border-top:1px solid var(--line);gap:.3rem;padding:.8rem 0;display:grid}.receipt dt{color:var(--muted);text-transform:uppercase;font-size:.65rem;font-weight:800}.receipt dd{overflow-wrap:anywhere;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.sessions-page .page-heading{max-width:51rem}.session-list{gap:.65rem;max-width:62rem;margin-top:2.5rem;display:grid}.session-row{border:1px solid var(--line);background:var(--panel);border-radius:.65rem;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.9rem;min-height:5.2rem;padding:.8rem 1rem;transition:border-color .15s,transform .15s;display:grid}.session-row:hover{border-color:#95ab99;transform:translate(3px)}.session-state{aspect-ratio:1;border-radius:50%;place-items:center;width:2.8rem;display:grid}.session-state.submitted{color:var(--green);background:var(--green-pale)}.session-state.draft{color:#81550e;background:#f6e5c3}.session-row>span:nth-child(2){gap:.3rem;min-width:0;display:grid}.session-row>span:nth-child(2) strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-row small{color:var(--muted);align-items:center;gap:.25rem;display:flex}.session-row>span:nth-child(3){justify-items:end;gap:.2rem;display:grid}.session-row em{color:var(--green);text-transform:uppercase;font-size:.68rem;font-style:normal;font-weight:900}.session-row time{color:var(--muted);font-size:.72rem}.sessions-empty{max-width:35rem;color:var(--muted);background:#fbfaf5a6;border:1px dashed #aab4a8;border-radius:.75rem;justify-items:start;gap:.7rem;margin-top:3rem;padding:1.5rem;display:grid}.sessions-empty h2,.sessions-empty p{margin:0}.sessions-empty h2{color:var(--ink);font-size:1.4rem}.sessions-empty .primary-button{margin-top:.5rem}@media (width<=760px){.login-screen{grid-template-columns:1fr}.login-brand-panel{min-height:46dvh;padding:max(1.5rem, env(safe-area-inset-top)) 1.4rem 1.8rem}.login-brand-panel h1{font-size:clamp(3rem,15vw,4.8rem)}.login-supporting{max-width:26rem}.login-action-panel{min-height:54dvh;padding:2rem 1.4rem max(2rem, env(safe-area-inset-bottom));place-items:start stretch}.login-icon{display:none}.app-body{padding-bottom:calc(4.2rem + env(safe-area-inset-bottom));display:block}.side-rail{z-index:30;height:calc(4.2rem + env(safe-area-inset-bottom));padding:.4rem .8rem env(safe-area-inset-bottom);border-top:1px solid var(--line);border-right:0;flex-direction:row;justify-content:center;position:fixed;bottom:0;left:0;right:0}.side-rail a,.rail-disabled{grid-auto-flow:column;gap:.4rem;width:min(8rem,40vw);min-height:3.2rem}.page{min-height:calc(100dvh - 8.6rem);padding:2rem 1.1rem}.page-heading h1{font-size:clamp(2.5rem,12vw,4rem)}.deployment-grid{grid-template-columns:1fr}.deployment-tile{min-height:11rem}.map-workspace{grid-template-rows:minmax(0,1fr) minmax(11rem,36%);grid-template-columns:1fr;height:calc(100dvh - 8.6rem)}.map-stage{grid-row:1}.target-panel{border-top:1px solid var(--line);border-right:0;grid-row:2}.target-heading{display:none}.search-field{margin:.65rem}.target-list{padding:0 .65rem .75rem;display:block;overflow:hidden auto}.target-row{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;width:100%;min-width:0;min-height:4.3rem;padding:0 .65rem}.target-row.selected{border:1px solid var(--green);margin:.35rem 0}@supports (color:color-mix(in lab, red, red)){.target-row.selected{border:1px solid color-mix(in srgb, var(--green), transparent 48%)}}.target-row.selected{border-radius:.55rem}.selection-dock{bottom:.7rem}.selection-dock.has-selection{grid-template-columns:auto 1fr}.selection-dock .primary-button{grid-column:1/-1;width:100%}.map-toolbar span:last-child{display:none}.scanner-workspace{grid-template-rows:auto minmax(21rem,52dvh) auto;grid-template-columns:1fr;min-height:calc(100dvh - 8.6rem)}.scanner-header{min-height:4.8rem}.camera-stage{min-height:21rem}.camera-source{flex-direction:column;align-items:flex-start;gap:.2rem;max-width:calc(100% - 10.5rem);top:.75rem;left:.75rem}.camera-source select{max-width:100%}.camera-controls{top:.75rem;right:.75rem}.capture-panel{min-height:24rem}.review-page,.status-page{min-height:calc(100dvh - 8.6rem);padding:2rem 1rem}.review-heading{flex-direction:column;align-items:start}.review-layout{grid-template-columns:1fr;margin-top:1.5rem}.submission-card{position:static}.scan-table th:nth-child(3),.scan-table td:nth-child(3),.scan-table th:nth-child(4),.scan-table td:nth-child(4){display:none}.status-page{grid-template-columns:1fr;align-content:start}.status-hero h1{font-size:clamp(3rem,14vw,5rem)}.session-row{grid-template-columns:auto minmax(0,1fr) auto}.session-row>span:nth-child(3){display:none}}@media (width<=440px){.topbar{height:4rem}.brand-link small,.operator-copy{display:none}.topbar-actions{gap:.45rem}.operator-avatar,.logout-button{width:2rem}.connection-pill span{display:none}.connection-pill{justify-content:center;width:2.2rem;padding:0}.map-workspace{height:calc(100dvh - 8.2rem)}}@media (width<=360px){.scanner-header{gap:.65rem;padding-inline:.7rem}.scanner-header>a{width:2.75rem}.scan-count{min-width:3.3rem}.scan-count small{font-size:.55rem}.camera-empty{padding:1rem}.camera-empty>span{width:4rem}.camera-empty h2{margin-top:.8rem;font-size:1.8rem}.camera-empty p{margin-bottom:1rem;font-size:.82rem}.camera-grid span{display:none}.scan-note-actions{flex-direction:column-reverse}.scan-note-actions button{width:100%}}.brand-mark{color:#0000;box-shadow:none;background:url(/favicon.svg) 50%/contain no-repeat;border-radius:0}.loading-screen,.message-screen,.app-frame{background-color:#0000}.loading-line span{background:var(--green)}.login-brand-panel{border-right:1px solid var(--line);color:var(--ink);background:linear-gradient(135deg, var(--green-dark), transparent 55%), var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.login-brand-panel{background:linear-gradient(135deg, color-mix(in srgb, var(--green-dark), transparent 80%), transparent 55%), var(--paper-deep)}}.login-brand-panel .brand-mark{background:url(/favicon.svg) 50%/contain no-repeat}.login-brand-panel .eyebrow,.login-supporting{color:var(--muted)}.floor-lines{opacity:.24}.floor-lines i{border-color:var(--green)}.login-action-panel{background:var(--paper)}.login-icon{background:var(--panel-raised)}.inline-error,.submit-error{border:1px solid var(--danger)}@supports (color:color-mix(in lab, red, red)){.inline-error,.submit-error{border:1px solid color-mix(in srgb, var(--danger), transparent 58%)}}.inline-error,.submit-error{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.inline-error,.submit-error{background:color-mix(in srgb, var(--danger), transparent 88%)}}.primary-button,.secondary-button,.camera-button{border-radius:.65rem;min-height:3rem;transition:background .15s,border-color .15s,transform .15s}.primary-button{color:oklch(99% .01 108);background:var(--green);box-shadow:0 10px 26px var(--green)}@supports (color:color-mix(in lab, red, red)){.primary-button{box-shadow:0 10px 26px color-mix(in srgb, var(--green), transparent 78%)}}.primary-button:hover{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.primary-button:hover{background:color-mix(in srgb, var(--green), white 9%)}}.primary-button:hover{transform:translateY(-1px)}.secondary-button{border-color:var(--line);background:var(--panel-raised)}.secondary-button:hover{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.secondary-button:hover{border-color:color-mix(in srgb, var(--green), white 15%)}}.secondary-button:hover{background:var(--panel-raised)}@supports (color:color-mix(in lab, red, red)){.secondary-button:hover{background:color-mix(in srgb, var(--panel-raised), white 4%)}}.topbar{background:var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.topbar{background:color-mix(in srgb, var(--paper-deep), transparent 7%)}}.topbar{box-shadow:0 1px #00000040}.brand-link strong{font-family:var(--font-heading);letter-spacing:.01em;font-size:1rem}.brand-link small{font-family:var(--font-mono)}.connection-pill{border:1px solid var(--line);font-family:var(--font-mono)}.connection-pill.is-online{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.connection-pill.is-online{color:color-mix(in srgb, var(--green), white 32%)}}.connection-pill.is-online{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.connection-pill.is-online{background:color-mix(in srgb, var(--green), transparent 88%)}}.connection-pill.is-offline{color:oklch(79% .12 70);background:#c17f2121}.side-rail{background:var(--paper-deep)}.side-rail a,.rail-disabled{border:1px solid #0000}.side-rail a:hover{color:var(--ink);background:var(--panel)}.side-rail a.active{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.side-rail a.active{border-color:color-mix(in srgb, var(--green), transparent 62%)}}.side-rail a.active{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.side-rail a.active{color:color-mix(in srgb, var(--green), white 28%)}}.side-rail a.active{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.side-rail a.active{background:color-mix(in srgb, var(--green), transparent 89%)}}.side-rail a.active{box-shadow:inset 3px 0 var(--green)}.page{padding:clamp(1.8rem,5vw,4.5rem)}.page-heading h1{letter-spacing:-.04em;max-width:13ch;font-size:clamp(2.5rem,5vw,4.4rem)}.deployment-grid{max-width:72rem;margin-top:clamp(2rem,4vw,3.25rem)}.deployment-tile{background:linear-gradient(145deg, var(--panel-raised), var(--panel));border-radius:.9rem;min-height:11rem}@supports (color:color-mix(in lab, red, red)){.deployment-tile{background:linear-gradient(145deg, color-mix(in srgb, var(--panel-raised), white 2%), var(--panel))}}.deployment-tile{box-shadow:0 10px 30px #00000021}.deployment-tile:after{content:"";background:linear-gradient(90deg, var(--green), transparent 65%);opacity:0;height:2px;transition:opacity .16s;position:absolute;bottom:0;left:0;right:0}.deployment-tile:hover{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.deployment-tile:hover{border-color:color-mix(in srgb, var(--green), transparent 38%)}}.deployment-tile:hover{box-shadow:0 18px 44px #00000045}.deployment-tile:hover:after{opacity:1}.deployment-index{color:var(--muted);font-family:var(--font-mono);font-size:.68rem;font-weight:700;top:.9rem;right:1rem}.deployment-icon{border:1px solid var(--green)}@supports (color:color-mix(in lab, red, red)){.deployment-icon{border:1px solid color-mix(in srgb, var(--green), transparent 72%)}}.deployment-icon{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.deployment-icon{color:color-mix(in srgb, var(--green), white 30%)}}.deployment-icon{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.deployment-icon{background:color-mix(in srgb, var(--green), transparent 88%)}}.status-dot i{background:var(--green);box-shadow:0 0 0 4px var(--green)}@supports (color:color-mix(in lab, red, red)){.status-dot i{box-shadow:0 0 0 4px color-mix(in srgb, var(--green), transparent 85%)}}.error-panel{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.error-panel{background:color-mix(in srgb, var(--danger), transparent 90%)}}.map-workspace{grid-template-columns:minmax(18rem,21rem) minmax(0,1fr)}.target-panel{background:var(--paper-deep)}.target-heading>a{background:var(--panel)}.target-heading>a:hover{border-color:var(--green)}.search-field{background:var(--panel)}.search-field:focus-within{box-shadow:0 0 0 3px var(--green)}@supports (color:color-mix(in lab, red, red)){.search-field:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--green), transparent 82%)}}.target-row:hover{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.target-row:hover{background:color-mix(in srgb, var(--green), transparent 94%)}}.target-row.selected{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.target-row.selected{border-color:color-mix(in srgb, var(--green), transparent 48%)}}.target-row.selected{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.target-row.selected{background:color-mix(in srgb, var(--green), transparent 87%)}}.target-pin{border:1px solid var(--green)}@supports (color:color-mix(in lab, red, red)){.target-pin{border:1px solid color-mix(in srgb, var(--green), transparent 72%)}}.target-pin{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.target-pin{color:color-mix(in srgb, var(--green), white 28%)}}.target-pin{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.target-pin{background:color-mix(in srgb, var(--green), transparent 89%)}}.map-stage{background:var(--paper-deep)}.map-toolbar span{border-color:var(--line);color:var(--ink);background:var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.map-toolbar span{background:color-mix(in srgb, var(--paper-deep), transparent 7%)}}.map-toolbar span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px #00000047}.map-toolbar span:last-child{margin-right:12rem}.map-message{background:var(--paper-deep)}.schematic-map{background:radial-gradient(circle at center, var(--green) 0 1px, transparent 1.5px) 0 0 / 24px 24px, radial-gradient(700px circle at 55% 48%, var(--green), transparent 65%), var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.schematic-map{background:radial-gradient(circle at center, color-mix(in srgb, var(--green), transparent 62%) 0 1px, transparent 1.5px) 0 0 / 24px 24px, radial-gradient(700px circle at 55% 48%, color-mix(in srgb, var(--green), transparent 92%), transparent 65%), var(--paper-deep)}}.floor-outline{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.floor-outline{border-color:color-mix(in srgb, var(--green), transparent 60%)}}.floor-outline{background:var(--panel-raised)}@supports (color:color-mix(in lab, red, red)){.floor-outline{background:color-mix(in srgb, var(--panel-raised), transparent 8%)}}.floor-outline{box-shadow:0 18px 40px #0000003d}.floor-outline-b{background:0 0}.floor-aisle{border-color:var(--line);background:var(--panel)}.map-node{border-color:var(--paper-deep);box-shadow:0 4px 18px var(--green)}@supports (color:color-mix(in lab, red, red)){.map-node{box-shadow:0 4px 18px color-mix(in srgb, var(--green), transparent 55%)}}.map-node:hover,.map-node.selected{color:var(--paper-deep);background:var(--green)}@supports (color:color-mix(in lab, red, red)){.map-node:hover,.map-node.selected{background:color-mix(in srgb, var(--green), white 28%)}}.map-compass{border:1px solid var(--line);background:var(--panel);box-shadow:0 8px 24px #00000040}.selection-dock{border-color:var(--line);background:var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.selection-dock{background:color-mix(in srgb, var(--paper-deep), transparent 4%)}}.selection-dock{box-shadow:0 20px 55px #0000006b}.selection-number{color:var(--paper-deep);background:var(--green)}@supports (color:color-mix(in lab, red, red)){.selection-number{background:color-mix(in srgb, var(--green), white 24%)}}.scanner-workspace,.scanner-header{background:var(--paper-deep)}@supports (color:color-mix(in lab, red, red)){.scanner-header{background:color-mix(in srgb, var(--paper-deep), var(--green-dark) 14%)}}.scanner-header .eyebrow,.scan-count small{color:var(--muted)}.scan-count strong{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.scan-count strong{color:color-mix(in srgb, var(--green), white 28%)}}.camera-stage{background:radial-gradient(circle at center, var(--green-dark), var(--paper-deep) 72%)}@supports (color:color-mix(in lab, red, red)){.camera-stage{background:radial-gradient(circle at center, color-mix(in srgb, var(--green-dark), black 20%), var(--paper-deep) 72%)}}.camera-empty>span{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.camera-empty>span{color:color-mix(in srgb, var(--green), white 28%)}}.camera-grid i{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.camera-grid i{border-color:color-mix(in srgb, var(--green), white 18%)}}.camera-grid span{background:var(--green);box-shadow:0 0 18px var(--green)}.camera-button{color:var(--paper-deep);background:var(--green)}@supports (color:color-mix(in lab, red, red)){.camera-button{background:color-mix(in srgb, var(--green), white 24%)}}.capture-panel{border-left:1px solid var(--line);background:var(--panel)}.manual-form input{border-color:var(--line);color:var(--ink);background:var(--paper-deep);font-family:var(--font-mono)}.manual-form input:focus{outline-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.manual-form input:focus{outline-color:color-mix(in srgb, var(--green), transparent 80%)}}.review-heading h1,.status-hero h1{letter-spacing:-.04em}.scan-table-wrap,.receipt{background:var(--panel);box-shadow:0 14px 40px #00000029}.scan-table td:nth-child(2) strong,.receipt dd{font-family:var(--font-mono)}.scan-table td button:hover{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.scan-table td button:hover{background:color-mix(in srgb, var(--danger), transparent 88%)}}.submission-card{border-color:var(--line);background:linear-gradient(150deg, var(--green), var(--panel) 52%)}@supports (color:color-mix(in lab, red, red)){.submission-card{background:linear-gradient(150deg, color-mix(in srgb, var(--green), transparent 90%), var(--panel) 52%)}}.submission-card{box-shadow:0 18px 44px #00000038}.submission-card>p:not(.eyebrow){color:var(--muted)}.submission-card dl,.submission-card dl div{border-color:var(--line)}.status-hero.success .status-icon{color:var(--green)}@supports (color:color-mix(in lab, red, red)){.status-hero.success .status-icon{color:color-mix(in srgb, var(--green), white 28%)}}.status-hero.success .status-icon{background:var(--green)}@supports (color:color-mix(in lab, red, red)){.status-hero.success .status-icon{background:color-mix(in srgb, var(--green), transparent 86%)}}.status-hero.pending .status-icon,.session-state.draft{color:oklch(79% .12 70);background:#c17f2121}.session-row{background:var(--panel)}.session-row:hover{border-color:var(--green)}@supports (color:color-mix(in lab, red, red)){.session-row:hover{border-color:color-mix(in srgb, var(--green), transparent 45%)}}.sessions-empty{border-color:var(--line);background:var(--panel)}@supports (color:color-mix(in lab, red, red)){.sessions-empty{background:color-mix(in srgb, var(--panel), transparent 18%)}}@media (width<=760px){.login-brand-panel{border-right:0;border-bottom:1px solid var(--line)}.route-stage,.map-workspace,.map-stage,.target-panel{width:100%;min-width:0}.map-workspace{grid-template-columns:minmax(0,1fr)}.map-toolbar{display:none}.side-rail{padding:0 0 env(safe-area-inset-bottom);background:var(--paper-deep);gap:0}@supports (color:color-mix(in lab, red, red)){.side-rail{background:color-mix(in srgb, var(--paper-deep), transparent 3%)}}.side-rail{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.side-rail a,.rail-disabled{border:0;border-top:3px solid #0000;border-radius:0;flex:1 1 0;width:auto;min-height:4.2rem}.side-rail svg{display:none}.side-rail a.active{border-top-color:var(--green);background:var(--green)}@supports (color:color-mix(in lab, red, red)){.side-rail a.active{background:color-mix(in srgb, var(--green), transparent 90%)}}.side-rail a.active{box-shadow:none}.target-row{background:var(--panel)}.capture-panel{border-top:1px solid var(--line);border-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
