/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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;--spacing:.25rem;--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,ui-sans-serif, system-ui, 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{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}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.hidden{display:none}.table{display:table}.\[env\:seeed_xiao_esp32s3\]{env:seeed xiao esp32s3}}:root{--ink:#151515;--muted:#74716a;--paper:#f2f0e9;--panel:#fbfaf6;--line:#d8d3c8;--charcoal:#0c0d0d;--charcoal-soft:#181a1a;--red:#df3e36;--red-dark:#9f2722;--green:#8cc46b;--amber:#e1b55c;--font-sans:var(--font-geist-sans), Arial, sans-serif;--font-mono:var(--font-geist-mono), "SFMono-Regular", monospace}*{box-sizing:border-box}html{background:#101111}body{color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#101111;margin:0}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}select{font:inherit}.app-shell{background:radial-gradient(circle at 30% -20%,#ffffff14,#0000 42%),#101111;min-height:100svh;padding:24px}.app-frame{background:var(--paper);border:1px solid #343636;border-radius:26px;width:min(100%,980px);min-height:calc(100svh - 48px);margin:0 auto;overflow:hidden;box-shadow:0 28px 70px #00000057}.topbar{color:#f4f1e8;background:var(--charcoal);border-bottom:1px solid #2d2f2f;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px 22px;display:flex}.brand-lockup{align-items:center;gap:14px;display:flex}.brand-mark{align-items:end;gap:3px;width:27px;height:30px;display:flex}.brand-mark i{background:var(--red);border-radius:1px;width:6px;display:block}.brand-mark i:first-child{height:14px}.brand-mark i:nth-child(2){height:27px}.brand-mark i:nth-child(3){height:20px}.eyebrow,.label{letter-spacing:.18em;text-transform:uppercase;margin:0;font-size:10px;font-weight:750}.eyebrow{color:#aaa79f}.topbar h1{letter-spacing:-.02em;margin:4px 0 0;font-size:20px;font-weight:600}.mode-pill{color:#a7d98a;font-family:var(--font-mono);letter-spacing:.12em;border:1px solid #3f4141;border-radius:999px;flex:none;padding:7px 10px;font-size:9px;font-weight:700}.mode-pill.demo{color:#e4c47b}.device-strip{border-bottom:1px solid var(--line);background:#e7e3da;justify-content:space-between;align-items:center;gap:24px;min-height:70px;padding:15px 28px;display:flex}.device-name{font-family:var(--font-mono);letter-spacing:.08em;margin:0;font-size:13px;font-weight:700}.last-seen{color:var(--muted);margin:4px 0 0;font-size:12px}.connection-pairs{color:#5f5d57;grid-template-columns:auto auto auto auto;align-items:center;gap:6px 9px;font-size:11px;display:grid}.status-dot{background:#aaa69d;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #0000000a}.status-dot.online{background:#5a9f50;box-shadow:0 0 0 3px #5a9f5021}.tabs{background:var(--panel);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.tabs button{color:#77736b;cursor:pointer;background:0 0;border:0;min-height:52px;font-size:12px;font-weight:650;position:relative}.tabs button:after{content:"";background:0 0;height:2px;position:absolute;bottom:0;left:22%;right:22%}.tabs button.active{color:var(--ink)}.tabs button.active:after{background:var(--red)}.view-stack{gap:18px;padding:22px;display:grid}.recorder-display{color:#efede7;background:var(--charcoal-soft);border:1px solid #292b2b;border-radius:18px;min-height:270px;padding:24px;box-shadow:inset 0 0 0 1px #ffffff06,inset 0 -30px 80px #00000038}.recorder-display.recording{border-color:#57211f}.recorder-heading,.recorder-footer{justify-content:space-between;align-items:center;gap:20px;display:flex}.recorder-heading .label{color:#777a77}.recorder-heading h2{margin:6px 0 0;font-size:22px;font-weight:550}.rec-light{color:#777;font-family:var(--font-mono);letter-spacing:.1em;align-items:center;gap:7px;font-size:11px;font-weight:750;display:inline-flex}.rec-light:before{content:"";background:#4e4f4e;border-radius:50%;width:10px;height:10px}.rec-light.on{color:#ff8e87}.rec-light.on:before{background:var(--red);animation:1.2s infinite pulse;box-shadow:0 0 0 4px #df3e3624,0 0 18px #df3e3680}.timecode{font-family:var(--font-mono);letter-spacing:-.07em;font-variant-numeric:tabular-nums;margin:27px 0 17px;font-size:clamp(52px,10vw,82px);font-weight:520;line-height:1}.level-bars{opacity:.85;align-items:center;gap:3px;height:40px;display:flex}.level-bars i{background:#d6d2c8;border-radius:1px;flex:1;min-width:2px;max-width:11px;transition:height .18s}.recording .level-bars i:nth-child(3n){background:var(--red)}.recorder-footer{color:#888a86;font-family:var(--font-mono);letter-spacing:.1em;border-top:1px solid #2c2e2e;margin-top:21px;padding-top:16px;font-size:9px;font-weight:700}.text-button{color:#d2cec4;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:4px;font-size:10px}.control-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.primary-control{text-align:left;border:1px solid var(--line);background:var(--panel);min-height:135px;color:var(--ink);cursor:pointer;border-radius:16px;padding:18px;transition:transform .12s,box-shadow .12s;box-shadow:0 3px #d4cfc5}.primary-control:active{transform:translateY(2px);box-shadow:0 1px #d4cfc5}.primary-control strong,.primary-control span{display:block}.primary-control .control-kicker{color:var(--muted);letter-spacing:.13em;font-size:9px;font-weight:750}.primary-control strong{margin:18px 0 6px;font-size:20px;font-weight:620}.primary-control>span:last-child{color:#77736b;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.primary-control.show-ready{color:#fff7f3;background:#3f4240;border-color:#262827;box-shadow:0 3px #262827}.primary-control.show-ready.armed{background:var(--red);border-color:var(--red-dark);box-shadow:0 3px 0 var(--red-dark)}.primary-control.show-ready .control-kicker,.primary-control.show-ready>span:last-child{color:#e4dfd7}.primary-control.show-ready.armed .control-kicker,.primary-control.show-ready.armed>span:last-child{color:#ffd1cd}.bench-panel{border:1px solid var(--line);background:#e8e4db;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:17px 18px;display:flex}.bench-panel .label{color:#64615b}.bench-panel p:not(.label){color:var(--muted);margin:5px 0 0;font-size:11px}.bench-actions{gap:8px;display:flex}.bench-actions button,.small-action{color:#33322f;cursor:pointer;background:#faf8f3;border:1px solid #c8c2b7;border-radius:9px;min-width:88px;padding:10px 13px;font-size:11px;font-weight:700}.bench-actions button.stop{color:var(--red-dark)}button:disabled{opacity:.42;cursor:not-allowed}.telemetry-row{border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.telemetry-row div{background:var(--panel);border-right:1px solid var(--line);padding:15px 17px}.telemetry-row div:last-child{border:0}.telemetry-row span,.location-details span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700;display:block}.telemetry-row strong{font-family:var(--font-mono);margin-top:7px;font-size:15px;display:block}.panel{min-height:510px;padding:28px}.panel-heading{justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px;display:flex}.panel-heading .label{color:var(--muted)}.panel-heading h2{letter-spacing:-.04em;margin:7px 0 0;font-size:29px}.panel-heading>span{color:var(--muted);font-family:var(--font-mono);font-size:11px}.recording-list{border-top:1px solid var(--line)}.recording-item{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:18px 0;display:grid}.take-marker{width:39px;height:39px;color:var(--red-dark);font-family:var(--font-mono);letter-spacing:.04em;background:#fff6f3;border:1px solid #d7b0ac;border-radius:50%;place-items:center;font-size:8px;font-weight:800;display:grid}.recording-copy strong,.recording-copy span,.recording-meta strong,.recording-meta span{display:block}.recording-copy strong{font-size:14px}.recording-copy span{color:var(--muted);margin-top:5px;font-size:11px}.recording-meta{text-align:right}.recording-meta strong{font-family:var(--font-mono);font-size:13px}.recording-meta span{color:#68975c;font-family:var(--font-mono);letter-spacing:.08em;margin-top:5px;font-size:8px;font-weight:800}.empty-state{color:var(--muted);text-align:center;padding:50px 10px;font-size:13px}.location-heading-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.freshness-pill{color:#775b27;min-height:35px;font-family:var(--font-mono);letter-spacing:.08em;background:#f6ecd2;border:1px solid #c8c2b7;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:9px;font-weight:800;display:inline-flex}.freshness-pill i{background:var(--amber);border-radius:50%;width:7px;height:7px}.freshness-pill small{color:#857b69;letter-spacing:0;font-size:8px;font-weight:650}.freshness-pill.live{color:#47713e;background:#edf5e9;border-color:#b7ceaf}.freshness-pill.live i{background:#5a9f50;box-shadow:0 0 0 3px #5a9f5021}.freshness-pill.offline{color:#7b3d38;background:#f7e8e5;border-color:#dbb4af}.freshness-pill.offline i{background:var(--red)}.map-type-control{background:#e2ded5;border:1px solid #c8c2b7;border-radius:9px;grid-template-columns:repeat(3,1fr);margin:-6px 0 13px;display:inline-grid;overflow:hidden}.map-type-control button{color:#6c6962;cursor:pointer;background:0 0;border:0;border-right:1px solid #c8c2b7;min-width:92px;min-height:35px;padding:0 13px;font-size:10px;font-weight:750}.map-type-control button:last-child{border-right:0}.map-type-control button.active{color:#fff;background:#262828}.location-toggles{grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 15px;display:grid}.location-toggles button{border:1px solid var(--line);color:#77736b;cursor:pointer;background:#ebe8e0;border-radius:10px;justify-content:space-between;align-items:center;gap:9px;min-height:45px;padding:0 11px;font-size:10px;font-weight:750;display:flex}.location-toggles button.active{color:var(--ink);background:var(--panel);border-color:#b9b4a9}.location-toggles button i{background:#bbb7ae;border-radius:99px;flex:none;width:29px;height:17px;transition:background .15s;display:block;position:relative}.location-toggles button i:after{content:"";background:#fff;border-radius:50%;width:11px;height:11px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000003d}.location-toggles button.active i{background:var(--red)}.location-toggles button.active i:after{transform:translate(12px)}.location-visuals{gap:13px;display:grid}.location-visuals.split{grid-template-columns:1fr 1fr}.location-visual-card{border:1px solid var(--line);background:var(--panel);border-radius:15px;min-width:0;overflow:hidden}.visual-card-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:56px;padding:10px 13px;display:flex}.visual-card-heading span,.visual-card-heading strong{display:block}.visual-card-heading span{color:var(--muted);letter-spacing:.1em;font-size:8px;font-weight:800}.visual-card-heading strong{margin-top:3px;font-size:12px}.visual-card-heading small{color:var(--muted);font-family:var(--font-mono);white-space:nowrap;font-size:8px}.live-dot{background:#61a451;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block;box-shadow:0 0 0 3px #61a4511f}.map-wrap{cursor:grab;touch-action:none;background:#dcdad3;height:340px;position:relative;overflow:hidden}.map-wrap:active{cursor:grabbing}.map-wrap.placing-zone{cursor:crosshair}.clean-map{isolation:isolate;border:0;border-radius:0}.map-tiles,.map-overlay{position:absolute;inset:0}.map-tile{width:256px;height:256px;position:absolute}.map-tile img{-webkit-user-select:none;user-select:none;pointer-events:none;width:256px;max-width:none;height:256px;position:absolute;inset:0}.map-label-tile{z-index:1}.map-overlay{z-index:2;pointer-events:none;width:100%;height:100%;overflow:visible}.map-overlay polyline{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.route-halo{stroke:#ffffffe6;stroke-width:7px}.route-line{stroke:var(--red);stroke-width:3px}.route-start{z-index:3;background:#353737;border:3px solid #fff;border-radius:50%;width:11px;height:11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000059}.route-point{z-index:3;cursor:pointer;background:#3f4140;border:3px solid #fff;border-radius:50%;width:12px;height:12px;padding:0;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000052}.route-point.selected{z-index:5;background:var(--red);width:18px;height:18px;box-shadow:0 0 0 5px #df3e3638}.accuracy-circle{z-index:2;pointer-events:none;background:#3486da2e;border:1px solid #216fc3b8;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.arrival-zone-circle{z-index:2;pointer-events:none;background:#df3e3621;border:2px dashed #df3e36e6;border-radius:50%;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 1px #ffffffa6}.tracker-marker{z-index:4;background:var(--red);border:7px solid #fff;border-radius:50%;width:24px;height:24px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 7px #00000061}.tracker-marker:after{content:"";border:2px solid #df3e3647;border-radius:50%;animation:2s ease-out infinite map-pulse;position:absolute;inset:-14px}.tracker-marker i{filter:drop-shadow(0 -1px 1px #0003);border-bottom:8px solid #fff;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;position:absolute;top:-17px;left:50%;transform:translate(-50%)}.map-zoom{z-index:5;border:1px solid #27282647;border-radius:8px;display:grid;position:absolute;top:10px;right:10px;overflow:hidden;box-shadow:0 2px 7px #00000026}.map-zoom button{color:#292927;cursor:pointer;background:#fffffff0;border:0;border-bottom:1px solid #d4d0c8;place-items:center;width:34px;height:32px;padding:0;font-size:18px;line-height:1;display:grid}.map-zoom button:last-child{border-bottom:0}.map-attribution{z-index:5;color:#565650;background:#ffffffd1;padding:2px 4px;font-size:7px;text-decoration:none;position:absolute;bottom:3px;right:4px}.place-zone-hint{z-index:6;color:#fff;pointer-events:none;background:#161717e6;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:750;position:absolute;top:13px;left:50%;transform:translate(-50%)}.street-view-wrap{background:#d8d6cf;height:340px;overflow:hidden}.street-view-wrap iframe{border:0;width:100%;height:100%}.street-view-link{color:var(--red-dark);border-top:1px solid var(--line);text-align:right;padding:9px 13px;font-size:9px;font-weight:750;text-decoration:none;display:block}.empty-map{border:1px solid var(--line);height:340px;color:var(--muted);border-radius:15px;place-items:center;display:grid}.location-details{grid-template-columns:repeat(4,1fr);align-items:center;gap:20px;padding:18px 2px;display:grid}.location-details strong{font-family:var(--font-mono);margin-top:6px;font-size:12px;display:block}.location-details a{color:var(--red-dark);font-size:11px;font-weight:700;text-decoration:none}.journey-playback,.route-point-details,.arrival-zone-panel{border:1px solid var(--line);background:var(--panel);border-radius:12px;margin-top:2px;padding:15px}.journey-playback-heading,.route-point-heading,.arrival-zone-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.journey-playback-heading span,.journey-playback-heading strong,.route-point-heading span,.route-point-heading strong,.arrival-zone-heading span,.arrival-zone-heading strong{display:block}.journey-playback-heading span,.route-point-heading span,.arrival-zone-heading span{color:var(--muted);letter-spacing:.11em;font-size:8px;font-weight:800}.journey-playback-heading strong,.route-point-heading strong,.arrival-zone-heading strong{margin-top:4px;font-size:12px}.journey-playback-heading small{color:var(--muted);font-family:var(--font-mono);font-size:9px}.journey-playback input[type=range]{width:100%;accent-color:var(--red);margin:17px 0 12px}.playback-actions{flex-wrap:wrap;gap:7px;display:flex}.playback-actions button,.route-point-heading button,.arrival-zone-controls button,.zone-toggle,.map-link-actions button,.map-link-actions a{color:#373632;cursor:pointer;background:#f7f5ef;border:1px solid #c3bdb2;border-radius:8px;min-height:34px;padding:0 11px;font-size:9px;font-weight:750;text-decoration:none}.playback-actions button:first-child{color:#fff;background:#242626;border-color:#242626}.route-point-details{background:#ebe7de;border-color:#c4beb2}.route-point-details p{margin:13px 0 9px;font-size:12px;font-weight:650;line-height:1.45}.route-point-details>small{color:var(--muted);margin-top:9px;font-size:8px;display:block}.point-meta{color:var(--muted);font-family:var(--font-mono);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:9px;display:flex}.arrival-zone-panel{background:#f2eee5}.arrival-zone-panel.arrived{background:#edf5e9;border-color:#91b686}.zone-toggle{min-width:52px}.zone-toggle.active{color:#fff;background:#202222;border-color:#202222}.arrival-zone-controls{align-items:end;gap:9px;margin-top:13px;display:flex}.arrival-zone-controls label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:5px;font-size:8px;font-weight:800;display:grid}.arrival-zone-controls select{min-height:34px;color:var(--ink);background:var(--panel);border:1px solid #c3bdb2;border-radius:8px;padding:0 30px 0 10px;font-size:10px;font-weight:700}.arrival-zone-panel>p{color:var(--muted);margin:10px 0 0;font-size:9px;line-height:1.45}.map-link-actions{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.map-link-actions a,.map-link-actions button{align-items:center;display:inline-flex}.map-link-actions .danger-action{color:var(--red-dark);background:#fff3f1;border-color:#d2aaa6;margin-left:auto}.arrival-alert{z-index:100;color:#effbe9;background:#315e2b;border:1px solid #79a76c;border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;max-width:min(520px,100vw - 28px);padding:16px 18px;display:grid;position:fixed;bottom:22px;right:22px;box-shadow:0 18px 50px #00000061}.arrival-alert span{font-family:var(--font-mono);letter-spacing:.12em;font-size:9px;font-weight:850}.arrival-alert strong{font-size:12px}.arrival-alert button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:7px;min-height:32px;padding:0 10px;font-size:9px;font-weight:750}.show-mode{background:#101111;padding:0}.show-mode .app-frame{width:100%;min-height:100svh;box-shadow:none;border:0;border-radius:0}.show-mode .topbar,.show-mode .device-strip,.show-mode .tabs,.show-mode .app-footer{display:none}.show-mode .location-panel{color:#eeeae1;background:#101111;min-height:100svh;padding:12px}.show-mode .location-panel>.map-type-control,.show-mode .location-panel>.location-toggles,.show-mode .live-location-details,.show-mode .journey-playback,.show-mode .route-point-details,.show-mode .arrival-zone-panel,.show-mode .map-link-actions{display:none}.show-mode .panel-heading{align-items:center;margin-bottom:10px}.show-mode .panel-heading h2{color:#f2efe8;margin-top:3px;font-size:18px}.show-mode .panel-heading .label{color:#858883}.show-mode .location-visuals{height:calc(100svh - 78px)}.show-mode .location-visuals.split{grid-template-columns:1fr 1fr}.show-mode .location-visual-card{background:#191b1b;border-color:#353737;height:100%}.show-mode .visual-card-heading{color:#efebe3;border-color:#353737}.show-mode .map-wrap{height:calc(100% - 56px)}.show-mode .street-view-wrap{height:calc(100% - 85px)}.setup-panel{grid-template-columns:1fr 1fr;gap:17px;display:grid}.setup-panel .panel-heading,.setup-panel .setup-note,.setup-panel .phone-setup,.setup-panel .save-button{grid-column:1/-1}.setup-panel label{color:#5f5b54;letter-spacing:.06em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:750;display:grid}.setup-panel input{background:var(--panel);width:100%;min-height:45px;color:var(--ink);font-family:var(--font-mono);border:1px solid #cfc9bd;border-radius:9px;outline:0;padding:0 13px;font-size:12px}.setup-panel input:focus{border-color:#77736b;box-shadow:0 0 0 3px #0000000d}.setup-note{color:var(--muted);margin:1px 0;font-size:11px;line-height:1.6}.phone-setup{border-top:1px solid var(--line);gap:15px;margin-top:5px;padding-top:22px;display:grid}.phone-setup-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.phone-setup-heading h3{letter-spacing:-.02em;margin:4px 0 0;font-size:18px}.phone-setup-heading>p{max-width:390px;color:var(--muted);margin:0;font-size:11px;line-height:1.55}.phone-fields{grid-template-columns:1fr 1fr;gap:17px;display:grid}.server-target-fields{grid-template-columns:minmax(0,1fr) 110px;gap:10px;display:grid}.sim-preflight{background:#f4edda;border:1px solid #ccb97f;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.sim-preflight>div{align-items:flex-start;gap:13px;display:flex}.step-number{color:#fff;width:28px;height:28px;font-family:var(--font-mono);background:#202222;border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.sim-preflight strong{font-size:12px}.sim-preflight p{color:#6c6658;max-width:620px;margin:5px 0 0;font-size:10px;line-height:1.55}.sim-save{width:100%}.checklist-heading{justify-content:space-between;align-items:end;gap:15px;margin-top:8px;display:flex}.checklist-heading h4{margin:5px 0 0;font-size:17px}.checklist-heading>button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:5px;font-size:10px;font-weight:700}.sim-command-list{gap:9px;display:grid}.sim-command-step{border:1px solid var(--line);background:var(--panel);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;padding:15px;display:grid}.sim-command-step.done{background:#f3f7ef;border-color:#a7c69c}.sim-command-step.done .step-number{background:#5f9154}.step-title{align-items:center;gap:8px;display:flex}.step-title strong{font-size:12px}.step-title span{color:#7b6943;letter-spacing:.06em;text-transform:uppercase;background:#eee3c7;border-radius:99px;padding:3px 6px;font-size:8px;font-weight:800}.step-copy>p{color:var(--muted);margin:5px 0 9px;font-size:10px;line-height:1.48}.step-code-row{flex-wrap:wrap;gap:7px;display:flex}.step-code-row code{color:#292927;font-family:var(--font-mono);overflow-wrap:anywhere;background:#ece9e2;border:1px solid #d7d1c6;border-radius:6px;padding:7px 9px;font-size:11px;font-weight:700}.step-actions{grid-template-columns:repeat(2,minmax(82px,1fr));gap:6px;min-width:178px;display:grid}.step-actions button,.setup-check{min-height:34px;color:var(--ink);cursor:pointer;background:#f7f5f0;border:1px solid #bbb5a9;border-radius:7px;padding:0 9px;font-size:9px;font-weight:750}.step-actions button.dark{color:#fff;background:#202121;border-color:#202121}.step-actions .setup-check{grid-column:1/-1}.setup-check.done{color:#47713e;background:#e6f0e1;border-color:#7ea272}.sms-command{background:#f1eee7;border:1px solid #cfc9bd;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:15px;display:flex}.sms-command span,.sms-command code{display:block}.sms-command span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:800}.sms-command code{color:var(--ink);font-family:var(--font-mono);font-size:13px;font-weight:700}.command-actions{flex:none;gap:8px;display:flex}.command-actions button{min-height:38px;color:var(--ink);background:var(--panel);cursor:pointer;border:1px solid #bbb5a9;border-radius:8px;padding:0 13px;font-size:10px;font-weight:750}.command-actions button.dark{color:#fff;background:#151616;border-color:#151616}.utility-commands{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.utility-commands button,.utility-commands a{border:1px solid var(--line);min-height:61px;color:var(--ink);background:var(--panel);text-align:left;cursor:pointer;border-radius:9px;padding:12px;text-decoration:none;display:block}.utility-commands strong,.utility-commands span{display:block}.utility-commands strong{font-size:11px}.utility-commands span{color:var(--muted);font-family:var(--font-mono);margin-top:5px;font-size:9px}.utility-commands .disabled{opacity:.42;pointer-events:none}.phone-note{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.save-button{color:#fff;cursor:pointer;background:#151616;border:1px solid #101111;border-radius:10px;min-height:48px;font-weight:700}.app-footer{border-top:1px solid var(--line);color:#65625c;min-height:46px;font-family:var(--font-mono);letter-spacing:.05em;background:#e7e3da;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:0 28px;font-size:9px;display:grid}.app-footer p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.app-footer>span:last-child{color:#98948a}.notice-light{background:var(--green);border-radius:50%;width:6px;height:6px}@keyframes pulse{50%{opacity:.5}}@keyframes map-pulse{0%{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(1.15)}}@media (width<=700px){.app-shell{padding:0}.app-frame{border:0;border-radius:0;min-height:100svh}.topbar{padding:19px 17px}.topbar h1{font-size:17px}.mode-pill{padding:6px 8px;font-size:8px}.device-strip{align-items:start;padding:13px 17px}.connection-pairs{grid-template-columns:auto auto}.view-stack{gap:13px;padding:14px}.recorder-display{border-radius:14px;min-height:250px;padding:19px}.timecode{margin-top:31px;font-size:62px}.control-grid{grid-template-columns:1fr}.primary-control{min-height:112px}.primary-control strong{margin-top:13px}.bench-panel{flex-direction:column;align-items:stretch}.bench-actions button{flex:1}.telemetry-row div{padding:13px 10px}.telemetry-row strong{font-size:13px}.panel{min-height:calc(100svh - 240px);padding:22px 17px}.location-panel .panel-heading{flex-direction:column;align-items:stretch;gap:13px}.location-heading-actions{flex-wrap:wrap;justify-content:stretch}.location-heading-actions .freshness-pill{flex:100%;justify-content:center}.location-heading-actions .small-action{flex:1;min-width:0}.map-type-control{width:100%;display:grid}.map-type-control button{min-width:0;padding:0 8px}.location-toggles{grid-template-columns:1fr 1fr}.location-toggles button:last-child{grid-column:1/-1}.location-visuals.split{grid-template-columns:1fr}.map-wrap,.street-view-wrap{height:330px}.location-details{grid-template-columns:1fr 1fr}.location-details a{text-align:right}.journey-playback-heading,.arrival-zone-heading{align-items:flex-start}.arrival-zone-controls{flex-direction:column;align-items:stretch}.arrival-zone-controls button,.arrival-zone-controls select{width:100%}.map-link-actions{grid-template-columns:1fr 1fr;display:grid}.map-link-actions a,.map-link-actions button{text-align:center;justify-content:center;min-width:0}.map-link-actions .danger-action{margin-left:0}.arrival-alert{grid-template-columns:1fr auto;bottom:14px;left:14px;right:14px}.arrival-alert span{grid-column:1/-1}.show-mode .location-panel{padding:9px}.show-mode .location-panel .panel-heading{flex-direction:row;align-items:center;gap:8px}.show-mode .location-heading-actions{flex-wrap:nowrap}.show-mode .location-heading-actions .freshness-pill{flex:0 auto}.show-mode .location-heading-actions .small-action:not(.show-mode-action){display:none}.show-mode .location-visuals{height:calc(100svh - 72px)}.show-mode .location-visuals.split{grid-template-rows:1fr 1fr;grid-template-columns:1fr}.show-mode .location-visuals.split .map-wrap,.show-mode .location-visuals.split .street-view-wrap{height:calc(100% - 56px)}.setup-panel{grid-template-columns:1fr}.setup-panel label,.setup-panel .panel-heading,.setup-panel .setup-note,.setup-panel .phone-setup,.setup-panel .save-button{grid-column:1}.phone-setup-heading{flex-direction:column;align-items:start;gap:8px}.phone-fields{grid-template-columns:1fr;gap:13px}.server-target-fields{grid-template-columns:minmax(0,1fr) 92px}.sim-preflight{flex-direction:column;align-items:stretch}.sim-preflight .setup-check{width:100%}.sim-command-step{grid-template-columns:auto minmax(0,1fr)}.step-actions{grid-column:1/-1;grid-template-columns:repeat(2,1fr);width:100%;min-width:0}.sms-command{flex-direction:column;align-items:stretch}.command-actions button{flex:1}.utility-commands{grid-template-columns:1fr}.app-footer{padding:0 17px}.app-footer>span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
