@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--bg-gradient:radial-gradient(circle at 50% -20%, #10b98126, transparent 45rem), radial-gradient(circle at 10% 40%, #3b82f614, transparent 30rem), linear-gradient(160deg, #090e0c, #040605 100%);--app-bg:#090d0cbf;--shell-border:#141c19;--glass-bg:#141c1973;--glass-bg-hover:#1c2622a6;--glass-border:#ffffff0f;--glass-border-focus:#10b98166;--text-primary:#f3f4f6;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-color:#ffffff12;--input-bg:#0d1311cc;--nav-bg:#090d0cd9;--brand:#10b981;--brand-light:#34d399;--brand-glow:#10b98140;--accent:#a3e635;--accent-glow:#a3e63533;--color-normal:#3b82f6;--bg-normal:#3b82f61f;--color-high:#f59e0b;--bg-high:#f59e0b1f;--color-urgent:#ef4444;--bg-urgent:#ef44441f;--status-new:#9ca3af;--status-new-bg:#9ca3af1a;--status-assigned:#f59e0b;--status-assigned-bg:#f59e0b1a;--status-progress:#3b82f6;--status-progress-bg:#3b82f61a;--status-review:#a855f7;--status-review-bg:#a855f71a;--shadow-lg:0 25px 50px -12px #00000080;--shadow-glow:0 0 20px #10b98126;--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1);--transition-spring:all .4s cubic-bezier(.175, .885, .32, 1.275)}.light-theme{--bg-gradient:radial-gradient(circle at 50% -20%, #10b9811f, transparent 45rem), radial-gradient(circle at 10% 40%, #3b82f60d, transparent 30rem), linear-gradient(160deg, #f0f4f2, #e5ebe8 100%);--app-bg:#ffffffd9;--shell-border:#e2e8f0;--glass-bg:#ffffffb3;--glass-bg-hover:#fffffff2;--glass-border:#10b9811f;--glass-border-focus:#10b98199;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--border-color:#10b98114;--input-bg:#f8fafce6;--nav-bg:#ffffffe6;--shadow-lg:0 25px 50px -12px #0f172a14;--shadow-glow:0 0 20px #10b98114}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}html,body,#root{width:100%;min-height:100%;font-family:Outfit,Plus Jakarta Sans,sans-serif;overflow-x:hidden}body{color:var(--text-primary);background:var(--bg-gradient);transition:var(--transition-smooth)}button,select,input,textarea{color:inherit;background:0 0;border:none;outline:none;font-family:inherit;font-size:1rem}button{cursor:pointer;transition:var(--transition-spring)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#10b98133;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#10b98166}.desktop-wrapper{justify-content:center;align-items:center;gap:2rem;width:100vw;min-height:100vh;padding:2.5rem;display:flex}@media (width<=1024px){.desktop-wrapper{flex-direction:column;gap:1.5rem;padding:1.5rem}}.control-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);border-radius:28px;flex-direction:column;flex:0 360px;align-self:stretch;gap:1.5rem;padding:2rem;display:flex}.control-panel h2{letter-spacing:-.03em;background:linear-gradient(135deg, var(--text-primary), var(--brand));-webkit-text-fill-color:transparent;-webkit-background-clip:text;align-items:center;gap:.5rem;font-size:1.4rem;font-weight:800;display:flex}.control-panel p{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.control-btn-group{flex-direction:column;gap:.75rem;display:flex}.panel-btn{border:1px solid var(--border-color);width:100%;color:var(--text-primary);text-align:left;background:#ffffff08;border-radius:16px;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;display:flex}.panel-btn:hover{background:var(--glass-bg-hover);border-color:var(--brand-glow);transform:translateY(-2px)}.panel-btn.active{background:var(--brand-glow);border-color:var(--brand);color:var(--brand-light)}.tech-specs{border-top:1px solid var(--border-color);flex-direction:column;gap:.75rem;padding-top:1.25rem;display:flex}.spec-row{justify-content:space-between;font-size:.8rem;font-weight:500;display:flex}.spec-label{color:var(--text-muted)}.spec-val{color:var(--text-secondary);font-family:monospace}.mobile-app{flex:none;place-items:center;display:grid;position:relative}.app-shell{background:var(--app-bg);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);width:395px;height:840px;box-shadow:var(--shadow-lg), 0 0 0 12px var(--shell-border), 0 20px 60px #0006;transition:var(--transition-smooth);border:4px solid #ffffff0d;border-radius:48px;flex-direction:column;display:flex;position:relative;overflow:hidden}.app-notch{background:var(--shell-border);z-index:100;border-bottom-right-radius:18px;border-bottom-left-radius:18px;justify-content:center;align-items:center;width:140px;height:28px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.app-notch:before{content:"";background:#ffffff1a;border-radius:99px;width:44px;height:4px}.screen-body{flex-direction:column;flex:auto;gap:1.25rem;padding:2.2rem 1.25rem 6.5rem;display:flex;overflow-y:auto}.screen-body::-webkit-scrollbar{display:none}.topbar{z-index:10;justify-content:space-between;align-items:center;padding:.5rem .25rem .75rem;display:flex;position:relative}.topbar button{background:var(--glass-bg);border:1px solid var(--glass-border);width:42px;height:42px;color:var(--text-primary);border-radius:14px;justify-content:center;align-items:center;display:flex;position:relative}.topbar button:hover{background:var(--glass-bg-hover);border-color:var(--brand)}.topbar button i{background:var(--color-urgent);width:8px;height:8px;box-shadow:0 0 8px var(--color-urgent);border-radius:50%;position:absolute;top:10px;right:10px}.topbar-center{text-align:center}.topbar-center span{letter-spacing:.1em;text-transform:uppercase;color:var(--brand);font-size:.7rem;font-weight:700;display:block}.topbar-center strong{letter-spacing:-.03em;color:var(--text-primary);margin-top:2px;font-size:1.35rem;font-weight:800;display:block}.today-card{color:#fff;box-shadow:var(--shadow-glow), var(--shadow-lg);background:linear-gradient(135deg,#10b981d9,#065f46f2),radial-gradient(circle at 90% 10%,#a3e63566,#0000 12rem);border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;gap:1.25rem;padding:1.5rem;display:flex;position:relative;overflow:hidden}.today-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff0d,#0000);animation:4s linear infinite shine;position:absolute;inset:0;transform:translate(-100%)}@keyframes shine{to{transform:translate(100%)}}.today-card span{color:#fffc;letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;font-weight:600}.today-card strong{letter-spacing:-.04em;margin-top:4px;font-size:2rem;font-weight:800;line-height:1.1;display:block}.today-card p{color:#ffffffe6;font-size:.85rem;line-height:1.4}.today-card button{background:var(--accent);color:#0b1c17;border-radius:14px;align-self:flex-start;padding:.75rem 1.25rem;font-size:.9rem;font-weight:700;box-shadow:0 4px 14px #a3e6354d}.today-card button:hover{transform:scale(1.04);box-shadow:0 6px 18px #a3e63580}.quick-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.quick-card{background:var(--glass-bg);border:1px solid var(--glass-border);transition:var(--transition-spring);border-radius:20px;flex-direction:column;gap:.5rem;padding:1.1rem;display:flex}.quick-card:hover{background:var(--glass-bg-hover);border-color:var(--brand-glow);transform:translateY(-2px)}.quick-card svg{color:var(--brand)}.quick-card strong{letter-spacing:-.03em;font-size:1.75rem;font-weight:800;line-height:1}.quick-card span{color:var(--text-secondary);font-size:.75rem;font-weight:600}.section-header{justify-content:space-between;align-items:center;padding:.25rem;display:flex}.section-header strong{letter-spacing:-.02em;font-size:1.1rem;font-weight:800}.section-header button{color:var(--brand-light);background:var(--brand-glow);border-radius:99px;padding:.4rem .8rem;font-size:.8rem;font-weight:700}.card-list{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;padding:.5rem 1rem;display:flex}.record-row{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 0;display:flex}.record-row:last-child{border-bottom:none}.record-row:hover{background:#ffffff03}.priority-bar{border-radius:99px;flex-shrink:0;width:4px;height:36px}.priority-bar.normal{background:var(--color-normal)}.priority-bar.high{background:var(--color-high)}.priority-bar.urgent{background:var(--color-urgent)}.record-info{flex:auto}.record-info strong{color:var(--text-primary);font-size:.95rem;font-weight:700;display:block}.record-info span{color:var(--text-secondary);margin-top:2px;font-size:.75rem;display:block}.record-status-col{text-align:right;flex-direction:column;align-items:flex-end;gap:4px;display:flex}.record-status-col small{color:var(--text-muted);font-size:.7rem;font-weight:500}.status-pill{text-transform:uppercase;letter-spacing:.03em;border-radius:99px;padding:.25rem .6rem;font-size:.7rem;font-weight:700}.status-pill.new{background:var(--status-new-bg);color:var(--status-new)}.status-pill.assigned{background:var(--status-assigned-bg);color:var(--status-assigned)}.status-pill.in-progress{background:var(--status-progress-bg);color:var(--status-progress)}.status-pill.review{background:var(--status-review-bg);color:var(--status-review)}.step-wizard{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.step-wizard-header{justify-content:space-between;align-items:center;display:flex}.wizard-nav-btn{border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-primary);background:#ffffff08;border-radius:12px;justify-content:center;align-items:center;display:flex}.wizard-nav-btn:hover{border-color:var(--brand);background:#ffffff14}.wizard-nav-btn:disabled{opacity:.2;cursor:not-allowed}.step-wizard-info{text-align:center}.step-wizard-info span{text-transform:uppercase;color:var(--brand);letter-spacing:.05em;font-size:.7rem;font-weight:700;display:block}.step-wizard-info strong{color:var(--text-primary);margin-top:2px;font-size:1.15rem;font-weight:800;display:block}.progress-track{background:#ffffff0d;border-radius:99px;height:6px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--brand), var(--accent));border-radius:99px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.custom-select-trigger{background:var(--input-bg);border:1px solid var(--glass-border);width:100%;height:52px;color:var(--text-primary);transition:var(--transition-smooth);border-radius:16px;justify-content:space-between;align-items:center;padding:0 1rem;font-size:.95rem;font-weight:600;display:flex}.custom-select-trigger:focus,.custom-select-trigger.active{border-color:var(--brand);box-shadow:0 0 10px #10b98126}.segmented-control{background:var(--input-bg);border:1px solid var(--glass-border);border-radius:16px;width:100%;padding:4px;display:flex;position:relative}.segmented-option{text-align:center;z-index:2;color:var(--text-secondary);border-radius:12px;flex:1;padding:.65rem 0;font-size:.85rem;font-weight:700}.segmented-option.active{color:#0b1c17;background:var(--accent);box-shadow:0 4px 10px #a3e63533}.segmented-option.active.normal{background:var(--color-normal);color:#fff;box-shadow:0 4px 10px #3b82f64d}.segmented-option.active.high{background:var(--color-high);color:#fff;box-shadow:0 4px 10px #f59e0b4d}.segmented-option.active.urgent{background:var(--color-urgent);color:#fff;box-shadow:0 4px 10px #ef44444d}.gps-scanner-widget{background:var(--input-bg);border:1px solid var(--glass-border);border-radius:20px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.gps-action-btn{background:var(--brand);color:#0b1c17;border-radius:14px;justify-content:center;align-items:center;gap:.5rem;width:100%;height:48px;font-weight:700;display:flex}.gps-action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px #10b98166}.gps-map-container{border:1px solid var(--border-color);background:#0006;border-radius:14px;justify-content:center;align-items:center;height:120px;display:flex;position:relative;overflow:hidden}.gps-radar-wave{border:2px solid #10b98166;border-radius:50%;width:100px;height:100px;animation:2.5s linear infinite pulse-wave;position:absolute}.gps-radar-wave.w2{animation-delay:.8s}.gps-radar-wave.w3{animation-delay:1.6s}@keyframes pulse-wave{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(2)}}.gps-radar-sweeper{background:conic-gradient(#10b98126 0deg,#0000 90deg);width:100%;height:100%;animation:3s linear infinite sweep;position:absolute}@keyframes sweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gps-ping-point{background:var(--brand);width:12px;height:12px;box-shadow:0 0 12px var(--brand);z-index:5;border-radius:50%;position:relative}.gps-coordinates-overlay{color:var(--brand-light);background:#090d0cd9;border:1px solid #10b98133;border-radius:8px;justify-content:space-between;padding:6px 10px;font-family:monospace;font-size:.72rem;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.photo-uploader{background:var(--input-bg);text-align:center;transition:var(--transition-smooth);cursor:pointer;border:2px dashed #10b98133;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.photo-uploader:hover{border-color:var(--brand);background:var(--glass-bg-hover)}.photo-uploader svg{color:var(--brand)}.photo-uploader span{color:var(--text-secondary);font-size:.85rem;font-weight:600}.photo-uploader small{color:var(--text-muted);font-size:.7rem}.photo-preview-box{border:1px solid var(--glass-border);border-radius:16px;width:100%;position:relative;overflow:hidden}.photo-preview-img{object-fit:cover;width:100%;height:160px;display:block}.photo-remove-btn{color:#fff;background:#0009;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:8px;right:8px}.conditional-alert{background:var(--glass-bg);border:1px solid var(--glass-border);transition:var(--transition-smooth);border-radius:16px;gap:.75rem;padding:1rem;font-size:.85rem;line-height:1.45;display:flex}.conditional-alert svg{flex-shrink:0}.conditional-alert.urgent{color:#fca5a5;background:#ef44440d;border-color:#ef44444d}.conditional-alert.urgent svg{color:var(--color-urgent)}.conditional-alert.safety{background:#10b9810d;border-color:#10b9814d}.conditional-alert.safety svg{color:var(--brand)}.conditional-alert.equipment{background:#3b82f60d;border-color:#3b82f64d}.conditional-alert.equipment svg{color:var(--color-normal)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;opacity:0;pointer-events:none;background:#00000080;align-items:flex-end;transition:opacity .3s;display:flex;position:absolute;inset:0}.modal-overlay.open{opacity:1;pointer-events:auto}.bottom-sheet{background:var(--nav-bg);border-top:1px solid var(--glass-border);border-top-left-radius:28px;border-top-right-radius:28px;flex-direction:column;gap:1.25rem;width:100%;padding:1.5rem;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(100%);box-shadow:0 -10px 40px #0000004d}.modal-overlay.open .bottom-sheet{transform:translateY(0)}.bottom-sheet-header{justify-content:space-between;align-items:center;display:flex}.bottom-sheet-header strong{font-size:1.1rem;font-weight:800}.bottom-sheet-header button{color:var(--text-secondary)}.select-options-list{flex-direction:column;gap:.5rem;max-height:250px;display:flex;overflow-y:auto}.select-option-row{text-align:left;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:.85rem 1rem;font-size:.9rem;font-weight:600;display:flex}.select-option-row:hover{background:#ffffff08}.select-option-row.selected{background:var(--brand-glow);color:var(--brand-light)}.form-card{flex-direction:column;gap:1rem;display:flex}.input-block{flex-direction:column;gap:.4rem;display:flex}.input-block span{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding-left:2px;font-size:.75rem;font-weight:700}.input-block select{display:none}.fake-input{background:var(--input-bg);border:1px solid var(--glass-border);width:100%;height:52px;color:var(--text-primary);border-radius:16px;align-items:center;gap:.5rem;padding:0 1rem;font-size:.95rem;font-weight:600;display:flex}.fake-input svg{color:var(--brand)}.text-area-input{background:var(--input-bg);border:1px solid var(--glass-border);width:100%;color:var(--text-primary);resize:none;border-radius:16px;min-height:80px;padding:.85rem 1rem;font-size:.95rem;font-weight:500}.text-area-input:focus{border-color:var(--brand)}.review-checklist{flex-direction:column;gap:.75rem;display:flex}.review-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;align-items:center;gap:.75rem;padding:.85rem 1rem;font-size:.9rem;font-weight:600;display:flex}.review-item svg{color:var(--brand)}.submit-airtable-btn{background:linear-gradient(135deg, var(--brand), var(--brand-light));color:#0b1c17;border-radius:16px;height:52px;margin-top:1rem;font-size:1rem;font-weight:800;box-shadow:0 4px 15px #10b9814d}.submit-airtable-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}.spreadsheet-box{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;flex-direction:column;max-height:520px;display:flex;overflow:hidden}.search-box{background:var(--input-bg);border-bottom:1px solid var(--border-color);height:48px;color:var(--text-secondary);align-items:center;gap:.5rem;padding:0 1rem;display:flex}.search-box input{width:100%;font-size:.9rem;font-weight:500}.search-box input::placeholder{color:var(--text-muted)}.filter-pills{border-bottom:1px solid var(--border-color);gap:.5rem;padding:.75rem 1rem;display:flex;overflow-x:auto}.filter-pills::-webkit-scrollbar{display:none}.filter-pill{color:var(--text-secondary);border:1px solid var(--border-color);white-space:nowrap;border-radius:99px;padding:.35rem .75rem;font-size:.75rem;font-weight:700}.filter-pill.active{background:var(--brand-glow);color:var(--brand-light);border-color:var(--brand)}.grid-table-container{flex:auto;overflow:auto}.grid-table{border-collapse:collapse;text-align:left;width:100%;font-size:.8rem}.grid-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);white-space:nowrap;background:#0003;padding:.65rem .85rem;font-weight:700}.grid-table td{border-bottom:1px solid var(--border-color);white-space:nowrap;padding:.75rem .85rem;font-weight:500}.grid-table tr:hover td{cursor:pointer;background:#ffffff05}.grid-text-bold{color:var(--text-primary);font-weight:700!important}.grid-meta-tag{color:var(--brand-light);font-family:monospace;font-size:.7rem}.drawer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:110;opacity:0;pointer-events:none;background:#00000080;justify-content:flex-end;transition:opacity .3s;display:flex;position:absolute;inset:0}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer-panel{background:var(--nav-bg);border-left:1px solid var(--glass-border);flex-direction:column;gap:1.5rem;width:85%;height:100%;padding:1.5rem;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;overflow-y:auto;transform:translate(100%);box-shadow:-10px 0 40px #0000004d}.drawer-backdrop.open .drawer-panel{transform:translate(0)}.drawer-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-bottom:1rem;display:flex}.drawer-header strong{letter-spacing:-.02em;font-size:1.15rem;font-weight:800}.drawer-content{flex-direction:column;gap:1.25rem;display:flex}.drawer-field-row{flex-direction:column;gap:.25rem;display:flex}.drawer-field-row label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:700}.drawer-field-row div{color:var(--text-primary);font-size:.95rem;font-weight:600}.alert-flow{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.alert-flow h3{letter-spacing:-.02em;align-items:center;gap:.4rem;font-size:1.15rem;font-weight:800;display:flex}.flow-container{flex-direction:column;gap:.85rem;display:flex;position:relative}.flow-card-node{background:var(--input-bg);border:1px solid var(--glass-border);transition:var(--transition-smooth);border-radius:16px;align-items:center;gap:.85rem;padding:1rem;display:flex;position:relative}.flow-card-node:before{content:"";background:var(--border-color);z-index:1;width:2px;height:10px;position:absolute;top:-10px;left:24px}.flow-card-node:first-child:before{display:none}.flow-card-node.active{border-color:var(--brand);background:var(--brand-glow);animation:2s ease-in-out infinite glow-pulse;box-shadow:0 0 15px #10b98126}@keyframes glow-pulse{0%,to{border-color:#10b98166}50%{border-color:var(--brand)}}.flow-icon{border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-secondary);background:#ffffff08;border-radius:10px;justify-content:center;align-items:center;display:flex}.flow-card-node.active .flow-icon{border-color:var(--brand);color:var(--brand-light);background:#10b98133}.flow-card-node.active.urgent .flow-icon{border-color:var(--color-urgent);color:#f87171;background:#ef444433}.flow-card-node.active.urgent{border-color:var(--color-urgent);background:#ef444414;box-shadow:0 0 15px #ef444426}.flow-node-text{flex:1}.flow-node-text strong{font-size:.85rem;font-weight:700;display:block}.flow-node-text span{color:var(--text-secondary);margin-top:1px;font-size:.72rem;display:block}.flow-trigger-pill{text-transform:uppercase;border:1px solid var(--border-color);background:#ffffff05;border-radius:99px;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.flow-card-node.active .flow-trigger-pill{background:var(--brand-light);color:#0b1c17;border-color:var(--brand)}.flow-card-node.active.urgent .flow-trigger-pill{background:var(--color-urgent);color:#fff;border-color:var(--color-urgent)}.base-map{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:24px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.base-map h3{letter-spacing:-.02em;margin-bottom:.25rem;font-size:1.1rem;font-weight:800}.base-map-tables{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.base-map-cell{background:var(--input-bg);border:1px solid var(--glass-border);border-radius:14px;align-items:center;gap:.5rem;padding:.75rem;font-size:.8rem;font-weight:600;display:flex}.base-map-cell svg{color:var(--brand)}.bottom-nav{background:var(--nav-bg);border-top:1px solid var(--glass-border);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);z-index:90;grid-template-columns:repeat(4,1fr);height:72px;padding:8px 12px;display:grid;position:absolute;inset:auto 0 0}.bottom-nav-btn{color:var(--text-secondary);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:.7rem;font-weight:700;display:flex}.bottom-nav-btn svg{transition:var(--transition-spring)}.bottom-nav-btn:hover{color:var(--brand-light)}.bottom-nav-btn.active{color:var(--brand-light);background:var(--brand-glow)}.bottom-nav-btn.active svg{transform:scale(1.15)}.toast-container{z-index:200;pointer-events:none;flex-direction:column;gap:.5rem;display:flex;position:absolute;top:48px;left:12px;right:12px}.toast-bubble{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--brand);color:var(--text-primary);pointer-events:auto;background:#0d1b17f2;border-radius:16px;align-items:center;gap:.75rem;padding:.85rem 1rem;animation:.4s cubic-bezier(.175,.885,.32,1.275) forwards slide-down;display:flex;box-shadow:0 10px 25px #0006}@keyframes slide-down{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}.toast-bubble svg{color:var(--brand);flex-shrink:0}.toast-bubble.urgent{border-color:var(--color-urgent);background:#1c0c0cf2}.toast-bubble.urgent svg{color:var(--color-urgent)}.toast-text{flex:1}.toast-text strong{font-size:.85rem;font-weight:700;display:block}.toast-text span{color:var(--text-secondary);margin-top:1px;font-size:.72rem;display:block}@media (width<=480px){body{background:var(--app-bg)}.desktop-wrapper{padding:0;display:block}.control-panel{display:none}.mobile-app{width:100vw;height:100vh}.app-shell{width:100vw;height:100vh;box-shadow:none;border:none;border-radius:0}.app-notch{display:none}.screen-body{padding-top:max(1rem, env(safe-area-inset-top));padding-bottom:calc(75px + env(safe-area-inset-bottom))}.bottom-nav{height:calc(72px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}}
