:root{--bg: #071019;--bg-soft: #0d1824;--panel: rgba(10, 21, 31, .82);--panel-strong: rgba(5, 15, 24, .92);--panel-light: rgba(255, 255, 255, .03);--border: rgba(143, 188, 202, .2);--border-strong: rgba(143, 188, 202, .34);--text: #e6edf1;--muted: #9ab1bc;--cyan: #8fbcca;--cyan-strong: #b4d8e6;--warn: #ffbf6f;--danger: #ff8a80;--ok: #9de3bf;color-scheme:dark;font-family:IBM Plex Sans,Segoe UI,sans-serif;background:radial-gradient(1200px 700px at 10% 10%,rgba(143,188,202,.08),transparent 60%),radial-gradient(900px 600px at 100% 0%,rgba(84,132,112,.08),transparent 60%),linear-gradient(180deg,#071019,#0a121b 55%,#081018)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{color:var(--text);background:radial-gradient(120% 120% at 50% -20%,rgba(56,104,133,.18),transparent 50%),linear-gradient(180deg,#071019,#0a1118)}a{color:inherit}button,input,select{font:inherit}.app-root{min-height:100vh;display:flex;flex-direction:column}.app-root-chromeless{min-height:100vh}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem;border-bottom:1px solid var(--border);background:#050f18d6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-brand{display:inline-flex;align-items:center;gap:.75rem;text-decoration:none}.app-brand img{width:2rem;height:2rem}.app-brand span{display:grid}.app-brand strong{letter-spacing:-.03em}.app-brand small{color:var(--muted)}.app-nav{display:inline-flex;gap:.5rem}.app-nav a{padding:.55rem .9rem;border:1px solid var(--border);border-radius:999px;text-decoration:none;color:var(--muted)}.app-nav a:hover{color:var(--cyan-strong);border-color:var(--border-strong)}.app-nav a.active{color:var(--text);background:#8fbcca29;border-color:var(--border-strong)}.app-shell{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:1.25rem 0 calc(2rem + env(safe-area-inset-bottom))}.roadscout-loading-screen{position:relative;overflow:hidden;width:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(120% 90% at 50% 108%,#e67e3e29,#e67e3e00 56%),radial-gradient(120% 120% at 82% -12%,#613c7e33,#613c7e00 62%),linear-gradient(180deg,#060a10,#09111a 46%,#0a121d)}.roadscout-loading-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,#0000 42%,#00000070);pointer-events:none;z-index:1}.roadscout-loading-screen.is-inline{min-height:calc(100vh - 10rem);border-radius:1.35rem}.roadscout-loading-screen.is-fullscreen{min-height:100dvh}.roadscout-loading-network{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;opacity:.92}.roadscout-loading-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;width:min(26rem,calc(100vw - 2rem));padding:1.2rem 1.25rem;border-radius:1rem;border:1px solid rgba(143,188,202,.2);background:#050f188c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 28px 60px #00000052}.roadscout-loading-beacon{width:.7rem;height:.7rem;border-radius:999px;background:#9ed4e0;box-shadow:0 0 #9ed4e09e;animation:roadscout-loading-beacon-pulse 1.6s ease-out infinite}.roadscout-loading-title{margin:0;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;color:#c6e9f3;letter-spacing:-.03em}.roadscout-loading-status{margin:0;max-width:20rem;text-align:center;line-height:1.45;color:#9eb1bc}@keyframes roadscout-loading-beacon-pulse{0%{box-shadow:0 0 #9ed4e099;transform:scale(.95)}70%{box-shadow:0 0 0 18px #9ed4e000;transform:scale(1)}to{box-shadow:0 0 #9ed4e000;transform:scale(.95)}}@media(prefers-reduced-motion:reduce){.roadscout-loading-network{opacity:.45}.roadscout-loading-beacon{animation:none}}.app-shell-chromeless{width:100%;margin:0;padding:0}.auth-page,.profile-page,.route-focus-page,.explore-page,.monitor-page{display:grid;gap:1rem}.auth-page{min-height:100dvh;align-content:center;padding:clamp(1rem,4vw,2rem);background:radial-gradient(120% 90% at 50% 108%,#e67e3e1a,#e67e3e00 56%),radial-gradient(120% 120% at 82% -12%,#613c7e24,#613c7e00 62%),linear-gradient(180deg,#060a10,#09111a 46%,#0a121d)}.auth-card,.hero-card,.section-card{border:1px solid var(--border);border-radius:1.1rem;background:var(--panel);box-shadow:0 24px 60px #0000004d}.auth-card,.hero-card{width:min(760px,100%);margin:0 auto;padding:1.35rem}.auth-card{width:min(34rem,100%);background:#050f18c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.section-card{padding:1.2rem}.section-intro,.section-header{display:grid;gap:.45rem}.section-intro h1,.section-header h2,.hero-card h1{margin:0;letter-spacing:-.04em}.section-intro p,.section-header p,.hero-copy{margin:0;color:var(--muted);line-height:1.55}.eyebrow{margin:0;color:var(--cyan);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.segmented-control{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem;padding:.35rem;background:#ffffff08;border:1px solid var(--border);border-radius:.95rem;margin:1rem 0}.segmented-control button{border:0;border-radius:.7rem;background:transparent;color:var(--muted);padding:.75rem 1rem;cursor:pointer}.segmented-control button.active{background:#8fbcca29;color:var(--text)}.form-card,.vehicle-form,.form-grid,.focus-grid,.page-grid{display:grid;gap:1rem}.page-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start}.page-column{display:grid;gap:1rem}.focus-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.focus-panel{display:grid;gap:.6rem;padding:1rem;border-radius:.95rem;border:1px solid var(--border);background:var(--panel-light)}.focus-panel h2,.saved-route-row h3{margin:0}.focus-panel p,.saved-route-row p,.empty-state{margin:0;color:var(--muted);line-height:1.5}.field{display:grid;gap:.4rem}.field span{color:var(--muted);font-size:.83rem}.field input,.field select{min-height:2.85rem;border-radius:.8rem;border:1px solid var(--border);background:#0000003d;color:var(--text);padding:0 .9rem}.field input:focus,.field select:focus{outline:none;border-color:var(--border-strong);box-shadow:0 0 0 2px #8fbcca2e}.checkbox-row{display:flex;align-items:flex-start;gap:.7rem;color:var(--muted);line-height:1.45}.checkbox-grid{display:grid;gap:.75rem}.button-row{display:flex;flex-wrap:wrap;gap:.7rem}.button-row.compact{justify-content:flex-end}.primary-button,.secondary-button,.primary-link,.secondary-link,.as-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.8rem;padding:0 1rem;border-radius:.8rem;border:1px solid var(--border);text-decoration:none;cursor:pointer}.primary-button,.primary-link{background:#48708980;border-color:#8fbcca6b;color:var(--text)}.secondary-button,.secondary-link,.as-link{background:#ffffff05;color:var(--text)}.secondary-button.danger{color:var(--danger)}.primary-button:disabled,.secondary-button:disabled{opacity:.65;cursor:not-allowed}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.primary-link:hover,.secondary-link:hover,.as-link:hover{border-color:var(--border-strong);color:var(--cyan-strong)}.stats-row{display:flex;flex-wrap:wrap;gap:.75rem}.stat-pill{display:grid;gap:.2rem;min-width:8rem;padding:.8rem .95rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff08}.stat-pill span{color:var(--muted);font-size:.8rem}.saved-routes-list{display:grid;gap:.75rem}.saved-route-row{display:grid;gap:.75rem;padding:.95rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff08}.incident-card-header,.incident-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.incident-activity-badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.75rem;padding:.2rem .6rem;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:.76rem;font-weight:600;white-space:nowrap}.incident-activity-badge.is-active{border-color:#9de3bf59;background:#9de3bf1f;color:var(--ok)}.incident-activity-badge.is-scheduled{border-color:#8fbcca59;background:#8fbcca24;color:var(--cyan-strong)}.incident-activity-badge.is-ended,.incident-activity-badge.is-old{border-color:#ffbf6f47;background:#ffbf6f1f;color:var(--warn)}.incident-activity-badge.is-unknown{color:var(--muted)}.incident-popup{display:grid;gap:.45rem;min-width:15rem}.incident-popup-meta,.incident-popup-detail{color:#4b6270;line-height:1.45}.incident-popup-actions{display:flex;padding-top:.2rem}.status-line{margin:0;padding:.9rem 1rem;border-radius:.9rem;border:1px solid var(--border);background:#ffffff08;line-height:1.5}.status-info{color:var(--muted)}.status-warn{color:var(--warn)}.status-err{color:var(--danger)}.status-ok{color:var(--ok)}.legacy-map-frame,.legacy-map-iframe{width:100%;height:100vh;border:0}.legacy-map-frame{background:#050b11}.trip-grid{align-items:start}.stops-list{display:grid;gap:.75rem}.stop-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.stop-row input{min-height:2.85rem;border-radius:.8rem;border:1px solid var(--border);background:#0000003d;color:var(--text);padding:0 .9rem}.workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.region-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.region-card{min-height:12rem}.region-chip-row{display:flex;flex-wrap:wrap;gap:.55rem}.region-chip,.region-count{color:var(--cyan-strong);font-size:.85rem}.region-chip{display:inline-flex;align-items:center;min-height:2rem;padding:0 .7rem;border-radius:999px;border:1px solid var(--border);background:#ffffff08;text-decoration:none}.region-chip:hover{border-color:var(--border-strong)}.state-list{display:grid;gap:.75rem}.state-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff08}.state-row strong,.state-row span{display:block}.state-row span{color:var(--muted)}.state-actions{display:flex;align-items:center;gap:.75rem}.map-shell-page{--map-dock-top: 1rem;position:relative;min-height:100vh;background:#050b11}.map-shell-rail{position:absolute;top:var(--map-dock-top);left:1rem;z-index:1000;display:grid;gap:1rem;align-content:start;width:min(24rem,calc(100vw - 2rem));max-height:calc(100vh - var(--map-dock-top) - 1rem);overflow:auto;padding-right:.2rem}.map-shell-rail.collapsed{width:min(24rem,calc(100vw - 2rem))}.map-shell-frame{min-height:100vh;height:100vh;overflow:hidden;background:var(--panel-strong)}.native-map-surface,.native-map-canvas,.native-map-canvas .leaflet-container{width:100%;height:100%}.native-map-surface{position:relative;background:radial-gradient(120% 120% at 50% -20%,rgba(56,104,133,.18),transparent 50%),linear-gradient(180deg,#071019,#0a1118)}.native-map-canvas .leaflet-container{background:#061019;font:inherit}.rs-invert-tiles .leaflet-tile{filter:invert(1) hue-rotate(180deg) saturate(.7) brightness(.86) contrast(1.05)}.rs-camera-pin{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;border:2px solid rgba(230,237,241,.94);background:#8fbccaeb;box-shadow:0 8px 18px #0006}.rs-camera-pin.is-route{background:#9de3bfeb}.rs-camera-pin.is-selected{border-color:#ffbf6f;box-shadow:0 0 0 4px #ffbf6f2e,0 8px 18px #00000073}.rs-camera-pin-core{width:8px;height:8px;border-radius:999px;background:#040c14db}.rs-route-camera-pin{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;border:2px solid rgba(230,237,241,.96);background:#40a2c0f0;box-shadow:0 0 0 3px #40a2c02e,0 6px 16px #0000006b}.rs-route-camera-pin.is-selected{border-color:#ffbf6f;box-shadow:0 0 0 4px #ffbf6f3d,0 8px 20px #00000075}.rs-route-camera-pin-core{width:7px;height:7px;border-radius:999px;background:#040c14eb}.rs-camera-cluster{display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:0 .75rem;border-radius:999px;border:2px solid rgba(180,216,230,.8);background:#19394ceb;color:#e6edf1;box-shadow:0 10px 24px #00000057}.rs-camera-cluster.is-route{min-width:52px;min-height:30px;border-radius:.8rem;background:#143a30eb}.rs-popup{display:grid;gap:.35rem}.rs-popup-image{width:100%;min-height:8rem;border-radius:.8rem;border:1px solid var(--border);object-fit:cover;background:#ffffff08}.rs-popup h3,.map-camera-focus-body h3{margin:0}.rs-popup-kicker,.rs-popup-meta,.map-camera-focus-body p{margin:0;color:var(--muted);line-height:1.45}.rs-popup-link{color:var(--cyan-strong);text-decoration:none}.rs-route-weather-marker{position:relative;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;border:2px solid rgba(255,255,255,.92);background:#081018f0;box-shadow:0 8px 18px #0000006b}.rs-route-weather-marker.has-alert{box-shadow:0 0 0 4px #ff63632e,0 8px 18px #0000006b}.rs-route-weather-marker:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:999px;border:1.5px solid var(--rs-weather-color);opacity:.9}.rs-route-weather-marker-image{position:relative;z-index:1;width:20px;height:20px}.rs-route-weather-marker-alert{position:absolute;top:-2px;right:-2px;z-index:2;min-width:14px;height:14px;padding:0 .15rem;border-radius:999px;background:#ff5f66;color:#fff;font-size:.62rem;font-weight:700;line-height:14px;text-align:center}.map-floating-toolbar{position:absolute;top:5rem;right:1rem;z-index:1001;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem;width:min(32rem,calc(100vw - 28rem))}.map-floating-account{position:absolute;top:1rem;right:1rem;z-index:1003;display:grid;justify-items:end;gap:.65rem;width:auto}.map-account-button{display:inline-grid;grid-template-columns:auto auto auto;gap:.55rem;align-items:center;min-height:3.2rem;min-width:8.5rem;padding:.55rem .75rem;border-radius:1rem;border:1px solid rgba(143,188,202,.22);background:linear-gradient(180deg,#060c14f0,#080f16db),#04080ec7;color:var(--text);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;text-align:left;box-shadow:0 16px 40px #00000047}.map-account-button.active{border-color:#8fbcca5c}.map-account-avatar{display:inline-flex;align-items:center;justify-content:center;width:2.1rem;min-width:2.1rem;height:2.1rem;border-radius:999px;border:1px solid rgba(143,188,202,.26);background:#8fbcca24;color:var(--cyan-strong);font-size:.76rem;font-weight:700;letter-spacing:.04em}.map-account-avatar.large{width:2.8rem;min-width:2.8rem;height:2.8rem;font-size:.92rem}.map-account-button-label{font-size:.92rem;font-weight:600;letter-spacing:-.02em}.map-account-copy,.map-account-popover-copy,.account-summary-header{display:grid}.map-account-copy{gap:.16rem}.map-account-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.map-account-copy span{color:var(--muted);font-size:.76rem}.map-account-gear{display:inline-flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;border-radius:999px;background:#ffffff0a;color:var(--text)}.map-account-gear svg{width:1rem;height:1rem;fill:currentColor}.map-account-popover{display:grid;gap:.9rem;width:min(19rem,calc(100vw - 2rem));padding:.95rem;border-color:#8fbcca2e;background:linear-gradient(180deg,#060c14f5,#080f16e6),#04080ed1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 48px #00000052}.map-account-popover-header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:start}.map-account-popover-copy{gap:.2rem}.map-account-popover-copy h3,.account-summary-header h3{margin:0}.map-account-popover-copy p,.account-summary-header p{margin:0;color:var(--muted)}.stats-row.compact{gap:.6rem}.stats-row.compact .stat-pill{min-width:0}.map-camera-overlay{position:absolute;top:8.55rem;right:1rem;z-index:1000;width:min(25rem,calc(100vw - 28rem));max-height:calc(100vh - 9.5rem);overflow:auto}.map-toolbar-button{min-height:2.6rem;padding:0 .9rem;border-radius:999px;border:1px solid var(--border);background:#060c14d1;color:var(--text);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer}.map-toolbar-button.active{border-color:var(--border-strong);background:#8fbcca24;color:var(--cyan-strong)}.map-toolbar-button:disabled{opacity:.5;cursor:not-allowed}.account-summary-card{border-color:#8fbcca33;background:linear-gradient(135deg,#8fbcca14,#ffffff05),#ffffff07}.account-summary-header{grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:center}.map-shell-dock{display:grid;gap:.9rem;padding:.95rem;border-color:#8fbcca2e;background:linear-gradient(180deg,#060c14eb,#080f16d6),#04080ec7;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.map-dock-header,.map-dock-title,.map-dock-body,.map-dock-stack{display:grid}.map-dock-header{grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:start}.map-rail-toggle{white-space:nowrap}.map-dock-title{gap:.2rem}.map-dock-title h1{margin:0;letter-spacing:-.05em}.map-tab-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;padding:.3rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff08}.map-tab{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;align-items:center;min-height:2.45rem;border:0;border-radius:.7rem;background:transparent;color:var(--muted);cursor:pointer;padding:.5rem .65rem;text-align:left}.map-tab.active{background:#8fbcca29;color:var(--text)}.map-tab-badge{display:inline-flex;align-items:center;justify-content:center;width:1.55rem;min-width:1.55rem;height:1.55rem;border-radius:999px;border:1px solid rgba(143,188,202,.26);background:#8fbcca1f;color:var(--cyan-strong);font-size:.72rem;font-weight:700;letter-spacing:.04em}.map-tab-copy{font-size:.9rem;font-weight:600}.map-dock-body,.map-dock-stack{gap:.9rem}.route-workspace-summary{border-color:#8fbcca38;background:linear-gradient(135deg,#8fbcca14,#ffffff05),#ffffff07}.route-panel-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.route-panel-button{display:grid;gap:.35rem;justify-items:start;min-height:4rem;padding:.75rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff06;color:var(--muted);cursor:pointer;text-align:left}.route-panel-button.active{border-color:#8fbcca57;background:linear-gradient(135deg,#8fbcca1f,#ffffff05),#ffffff08;color:var(--text)}.route-panel-button:disabled{opacity:.48;cursor:not-allowed}.route-panel-button-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.35rem;height:1.6rem;padding:0 .5rem;border-radius:999px;border:1px solid rgba(143,188,202,.24);background:#8fbcca1a;color:var(--cyan-strong);font-size:.68rem;font-weight:700;letter-spacing:.08em}.route-panel-button-copy{font-size:.84rem;font-weight:600}.map-dock-body .section-header{gap:.35rem}.map-dock-body .saved-routes-list{gap:.65rem}.map-dock-body .saved-route-row{padding:.8rem .85rem;background:#ffffff06}.route-choice-row{border-color:#8fbcca29}.route-choice-row.active{border-color:#8fbcca61;background:linear-gradient(135deg,#8fbcca1f,#ffffff05),#ffffff07}.route-choice-meta{color:var(--muted)}.route-camera-window{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.route-camera-thumb{display:grid;gap:.4rem;padding:.45rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff06;color:var(--text);cursor:pointer;text-align:left}.route-camera-thumb.active{border-color:#8fbcca5c;background:linear-gradient(180deg,#8fbcca29,#ffffff05),#ffffff08}.route-camera-thumb-image,.route-camera-thumb-placeholder{width:100%;min-height:4rem;border-radius:.7rem;border:1px solid rgba(255,255,255,.08);object-fit:cover;background:#ffffff08}.route-camera-thumb-placeholder{display:flex;align-items:center;justify-content:center;padding:.4rem;color:var(--muted);font-size:.68rem;text-align:center}.route-camera-thumb-meta{display:grid;gap:.2rem}.route-camera-thumb-meta strong,.route-camera-thumb-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-camera-thumb-meta strong{font-size:.72rem;font-weight:700}.route-camera-thumb-meta span,.route-camera-thumb-link{color:var(--muted);font-size:.66rem}.route-camera-highlight{border-color:#8fbcca3d;background:linear-gradient(135deg,#8fbcca1a,#ffffff05),#ffffff08}.route-camera-scroll{max-height:22rem;overflow-y:auto;padding-right:.2rem}.route-camera-list-row{grid-template-columns:5.4rem minmax(0,1fr);align-items:start;gap:.75rem}.route-camera-list-row.active{border-color:#8fbcca5c;background:linear-gradient(135deg,#8fbcca1f,#ffffff05),#ffffff08}.route-camera-list-media,.route-camera-list-copy{display:grid}.route-camera-list-copy{gap:.75rem}.route-camera-list-image,.route-camera-list-placeholder{width:100%;min-height:4.8rem;border-radius:.8rem;border:1px solid rgba(255,255,255,.08);object-fit:cover;background:#ffffff08}.route-camera-list-placeholder{display:flex;align-items:center;justify-content:center;padding:.5rem;color:var(--muted);font-size:.74rem;text-align:center}.map-camera-focus-card{display:grid;gap:.85rem;padding:.85rem;border-radius:1rem;border:1px solid var(--border);background:#ffffff08}.map-camera-media,.map-camera-media-frame{display:grid}.map-camera-media{gap:.75rem}.map-camera-media-frame{position:relative;overflow:hidden;border-radius:.9rem}.map-camera-focus-image,.map-camera-focus-video,.map-camera-focus-placeholder{width:100%;min-height:11rem;border-radius:.9rem;border:1px solid var(--border);object-fit:cover;background:#ffffff08}.map-camera-focus-video{display:none;background:#02070b}.map-camera-focus-video.visible{display:block}.map-camera-focus-placeholder{display:flex;align-items:center;justify-content:center;color:var(--muted)}.map-camera-focus-placeholder-detail{flex-direction:column;gap:.45rem;padding:1rem;text-align:center}.map-camera-focus-placeholder-detail strong{color:var(--text)}.map-camera-media-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(180deg,#02070b1f,#02070bad);color:var(--cyan-strong);font-size:.82rem;font-weight:600;text-align:center}.map-camera-media-status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--muted);font-size:.78rem;line-height:1.4}.map-camera-media-status span{flex:1 1 auto}.map-camera-focus-body{display:grid;gap:.45rem}.camera-feed-grid{display:grid;gap:1rem}.camera-card{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:1rem;padding:.95rem;border-radius:1rem;border:1px solid var(--border);background:#ffffff08}.camera-card-image,.camera-card-placeholder{width:100%;min-height:9rem;border-radius:.85rem;border:1px solid var(--border);object-fit:cover;background:#ffffff08}.camera-card-placeholder{display:flex;align-items:center;justify-content:center;color:var(--muted)}.camera-card-body,.camera-card-heading{display:grid;gap:.55rem}.camera-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:start}.camera-card-kicker,.camera-card-meta{margin:0;color:var(--muted)}.camera-card-body h3{margin:0}.camera-distance-pill{display:inline-flex;align-items:center;min-height:2rem;padding:0 .75rem;border-radius:999px;border:1px solid var(--border);background:#8fbcca1f;color:var(--cyan-strong);font-size:.82rem}.route-intelligence-panel{display:grid;gap:1rem}.route-intelligence-card,.route-intelligence-stack,.route-outline-card,.route-outline-list,.route-metric-grid,.route-metric-card,.route-outline-row{display:grid;gap:.75rem}.route-outline-card{padding:1rem;border-radius:1rem;border:1px solid var(--border);background:linear-gradient(135deg,#8fbcca1f,#ffffff05),#ffffff05}.route-outline-list{gap:.55rem}.route-preview-shell{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(12rem,.85fr);gap:.9rem;align-items:stretch}.route-preview-meta{display:grid;gap:.75rem}.route-preview-stat{display:grid;gap:.25rem;padding:.85rem .9rem;border-radius:.9rem;border:1px solid var(--border);background:#00000029}.route-preview-stat span{color:var(--muted);font-size:.8rem}.route-preview-stat strong{letter-spacing:-.03em}.route-outline-row{grid-template-columns:4.75rem minmax(0,1fr);align-items:start}.route-outline-row span,.route-metric-card span{color:var(--muted);font-size:.82rem}.route-outline-row strong,.route-metric-card strong{letter-spacing:-.03em}.state-chip-list,.insight-chip-row{display:flex;flex-wrap:wrap;gap:.6rem}.state-chip,.insight-chip{display:inline-flex;align-items:center;min-height:2rem;padding:0 .75rem;border-radius:999px;border:1px solid var(--border);background:#ffffff0a}.state-chip.muted{color:var(--muted)}.route-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-metric-grid.compact{gap:.9rem}.route-metric-card{min-height:100%;padding:.95rem;border-radius:.95rem;border:1px solid var(--border);background:#ffffff08}.route-metric-card p{margin:0;color:var(--muted);line-height:1.5}.route-intelligence-grid{align-items:start}.route-sparkline,.route-sparkline-empty{width:100%;min-height:12rem;border-radius:1rem;border:1px solid var(--border);background:radial-gradient(circle at top left,rgba(143,188,202,.18),transparent 45%),linear-gradient(180deg,#040c14c7,#080f16f0)}.route-sparkline-empty{display:flex;align-items:center;justify-content:center;padding:1rem;color:var(--muted);text-align:center}@media(max-width:980px){.page-grid,.focus-grid,.region-grid,.workflow-grid,.map-shell-page,.camera-card,.route-metric-grid,.route-preview-shell{grid-template-columns:1fr}}@media(max-width:720px){.app-header{flex-direction:row;align-items:center;padding:.85rem .85rem .7rem}.app-brand small{display:none}.app-nav{position:fixed;left:.75rem;right:.75rem;bottom:calc(.75rem + env(safe-area-inset-bottom));z-index:60;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;padding:.35rem;border:1px solid var(--border);border-radius:1rem;background:#050f18eb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 40px #00000057}.app-nav a{justify-content:center;min-height:3.05rem;padding:.45rem .3rem;text-align:center;font-size:.78rem;line-height:1.2}.app-shell{width:min(100% - 1rem,100%);padding-bottom:calc(6.5rem + env(safe-area-inset-bottom))}.stop-row{grid-template-columns:1fr}.auth-card,.hero-card,.section-card{padding:1rem}.map-shell-rail{--map-dock-top: .75rem;top:auto;bottom:4.85rem;left:.75rem;right:.75rem;width:auto;max-height:min(58vh,calc(100vh - 9.5rem));overflow:visible}.map-shell-dock{max-height:inherit;border-radius:1.2rem;box-shadow:0 24px 48px #0000005c}.map-dock-body{max-height:clamp(12rem,38vh,24rem);overflow:auto;padding-right:.1rem}.map-tab-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.route-panel-strip{display:flex;overflow-x:auto;gap:.45rem;padding-bottom:.15rem;scroll-snap-type:x proximity;scrollbar-width:none}.route-panel-strip::-webkit-scrollbar{display:none}.route-panel-button{flex:0 0 8.5rem;min-height:3.5rem;scroll-snap-align:start}.button-row.compact{justify-content:stretch}.button-row.compact>*{flex:1 1 calc(50% - .35rem)}.trip-primary-actions>.primary-button,.route-plan-actions>.primary-button{flex:1 1 100%}.trip-primary-actions>.secondary-button,.route-plan-actions>.secondary-button{flex:1 1 calc(50% - .35rem)}.route-workspace-stats .stat-pill{min-width:calc(50% - .4rem);flex:1 1 calc(50% - .4rem)}.route-camera-window{grid-template-columns:repeat(3,minmax(0,1fr))}.route-camera-list-row{grid-template-columns:1fr}.route-camera-list-image,.route-camera-list-placeholder{min-height:7rem}.map-camera-overlay{top:4.9rem;left:.75rem;right:.75rem;width:auto;max-height:min(34rem,calc(100vh - 9rem))}.map-floating-toolbar{left:.75rem;right:.75rem;top:auto;bottom:.75rem;width:auto;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:none}.map-floating-toolbar::-webkit-scrollbar{display:none}.map-floating-account{top:.75rem;left:auto;right:.75rem;width:auto}.map-account-popover{width:min(18rem,calc(100vw - 1.5rem))}.map-account-button{min-width:0}}
