:root{--bg-primary: #0a0e14;--bg-secondary: #11161d;--bg-tertiary: #1a2029;--border: #262d38;--border-bright: #3b4553;--text-primary: #eaf0f7;--text-secondary: #96a1b0;--text-muted: #626d7c;--color-sid: #3b9eff;--color-star: #ffb547;--color-iap: #4ddb8d;--color-ctr: #ff6b6b;--color-fis: #c084fc;--color-tma: #fb923c;--color-atz: #facc15;--color-danger: #ff4d4d;--color-success: #4ddb8d;--shadow-sm: 0 2px 4px rgba(0,0,0,.4);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--sidebar-width: 340px;--map-label-scale: 1.2;--map-symbol-scale: 1.4;--ui-scale: 1.3}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.hidden{display:none!important}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg-primary);font-family:Inter,sans-serif;color:var(--text-primary)}#root{width:100%;height:100%;display:flex;position:relative}.sidebar{width:var(--sidebar-width);height:100%;background:linear-gradient(180deg,var(--bg-primary) 0%,#0c1119 100%);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:1000;transition:width .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}.sidebar.collapsed{width:0;border-right:none}.sidebar.collapsed .sidebar-header,.sidebar.collapsed .sidebar-content{opacity:0;pointer-events:none;transition:opacity .2s ease}.sidebar-header{padding:16px 16px 12px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--bg-secondary),var(--bg-primary));min-width:var(--sidebar-width)}.sidebar-header h2{font-size:16px;font-weight:700;margin-bottom:4px;letter-spacing:-.02em}.header-controls{display:flex;align-items:center;gap:12px}#btn-sidebar-toggle{position:absolute;left:calc(100% + 10px);top:10px;z-index:1100;transition:left .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1)}.sidebar.collapsed #btn-sidebar-toggle{left:calc(100% + 10px)}.sidebar.collapsed #btn-sidebar-toggle svg{transform:rotate(180deg)}#btn-sidebar-toggle svg{transition:transform .3s ease}.sidebar-header span{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;display:block}.sidebar-content{padding:0;font-size:calc(13px * var(--ui-scale));color:var(--text-secondary);line-height:1.5;flex:1;overflow-y:auto;padding-bottom:5rem}.sidebar-content::-webkit-scrollbar{width:4px}.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar-content::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}.sidebar-content::-webkit-scrollbar-thumb:hover{background:#ffffff52}#map{flex:1;height:100%;background:#1a1a1e}.leaflet-div-icon{background:transparent!important;border:none!important}.leaflet-interactive:focus{outline:none}.section-label{font-family:JetBrains Mono,monospace;font-size:calc(10px * var(--ui-scale));font-weight:600;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;padding:16px 16px 8px}.layer-row{padding:2px 8px;border-radius:6px}.layer-row:hover{background:var(--bg-tertiary)}.layer-toggle-label{display:flex;align-items:center;gap:9px;padding:6px 8px;cursor:pointer;border-radius:5px;-webkit-user-select:none;user-select:none;width:100%}.layer-toggle-label input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1.5px solid var(--border-bright);border-radius:3px;background:transparent;cursor:pointer;flex-shrink:0;position:relative;transition:background .15s ease,border-color .15s ease}.layer-toggle-label input[type=checkbox]:checked{background:var(--color-sid);border-color:var(--color-sid)}.layer-toggle-label input[type=checkbox]:checked:after{content:"";position:absolute;left:3px;top:0;width:5px;height:9px;border:2px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}.layer-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.layer-name{font-size:13px;color:var(--text-primary);flex:1}.layer-count{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 7px;border-radius:10px;border:1px solid var(--border);white-space:nowrap}.loading-state{display:flex;align-items:center;gap:10px;padding:20px 16px;color:var(--text-muted);font-size:12px}.loading-dot{width:8px;height:8px;border-radius:50%;background:var(--color-sid);flex-shrink:0;animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.7)}}.fix-tooltip{background:var(--bg-secondary)!important;border:1px solid var(--border-bright)!important;border-radius:4px!important;color:var(--text-primary)!important;font-family:JetBrains Mono,monospace!important;font-size:11px!important;padding:3px 8px!important;box-shadow:var(--shadow-sm)!important}.fix-tooltip:before{display:none!important}.zoom-hide-generic-ghosts .ghost-fix-t4{display:none!important}.ghost-fix-label{background:transparent!important;border:none!important;box-shadow:none!important;color:#7ec8e3!important;font-family:JetBrains Mono,monospace!important;font-size:10px!important;font-weight:600!important;line-height:1.2!important;padding:0!important;margin:0!important;white-space:nowrap!important;text-align:center!important;text-shadow:-1px -1px 0 rgba(0,0,0,.95),1px -1px 0 rgba(0,0,0,.95),-1px 1px 0 rgba(0,0,0,.95),1px 1px 0 rgba(0,0,0,.95),0 0 6px rgba(0,0,0,.8)!important;pointer-events:none!important;opacity:.45!important}.ghost-fix-label:before{display:none!important}.fix-label{background:transparent!important;border:none!important;box-shadow:none!important;color:var(--text-secondary)!important;font-family:JetBrains Mono,monospace!important;font-size:calc(10px * var(--map-label-scale))!important;font-weight:600!important;padding:1px 3px!important;white-space:nowrap!important;letter-spacing:.04em!important;text-shadow:0 0 4px rgba(0,0,0,.9),0 0 8px rgba(0,0,0,.7)!important;pointer-events:none!important;opacity:.18!important}.fix-label:before{display:none!important}.waypoint-search-wrapper{position:relative;padding:8px 16px 4px}.waypoint-search-input{width:100%;background:var(--bg-tertiary);border:1px solid var(--border-bright);border-radius:6px;padding:8px 32px 8px 10px;color:var(--text-primary);font-size:13px;font-family:JetBrains Mono,monospace;outline:none;transition:border-color .15s;box-sizing:border-box}.waypoint-search-input:focus{border-color:var(--color-sid);box-shadow:0 0 0 2px #3b9eff1f}.waypoint-search-input::placeholder{color:var(--text-muted)}.search-icon{position:absolute;right:26px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.3;pointer-events:none;line-height:1}.sidebar-divider{height:1px;background:var(--border);margin:8px 0}.builder-section{padding:0 0 12px}.builder-section-title{display:flex;align-items:center;gap:8px;padding:10px 16px 12px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid var(--border);margin-bottom:12px}.builder-section-title.building{padding:8px 16px;gap:6px;border-bottom:1px solid var(--border);margin-bottom:10px}.building-type-badge{background:var(--bg-tertiary);border:1px solid var(--border-bright);border-radius:3px;padding:2px 6px;font-size:10px;font-family:JetBrains Mono,monospace;color:var(--color-sid);letter-spacing:.08em;flex-shrink:0}.building-name{font-size:12px;color:var(--text-primary);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.back-btn{background:none;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:0;line-height:1;flex-shrink:0;transition:color .15s}.back-btn:hover{color:var(--text-primary)}.new-procedure-btn{display:flex;align-items:center;gap:10px;width:calc(100% - 32px);margin:4px 16px 0;padding:11px 14px;background:var(--bg-tertiary);border:1px dashed var(--border-bright);border-radius:6px;color:var(--text-secondary);font-size:13px;font-family:Inter,sans-serif;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.new-procedure-btn:hover{background:#1e2a38;border-color:var(--color-sid);color:var(--text-primary)}.new-btn-plus{font-size:18px;line-height:1;color:var(--color-sid);font-weight:300}.form-field{padding:0 16px 12px}.form-label{display:block;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-family:JetBrains Mono,monospace;margin-bottom:5px}.form-input,.form-select{width:100%;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;padding:8px 10px;color:var(--text-primary);font-size:13px;font-family:Inter,sans-serif;outline:none;transition:border-color .15s;box-sizing:border-box}.form-input:focus,.form-select:focus{border-color:var(--color-sid)}.form-select{cursor:pointer}.form-select optgroup{color:var(--text-muted);font-style:normal}.form-select option{background:var(--bg-secondary);color:var(--text-primary)}.input-error{border-color:var(--color-danger)!important;animation:shake .3s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.color-preset-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.color-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;flex-shrink:0;transition:transform .12s,border-color .12s;padding:0}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:#fff;transform:scale(1.15)}.color-custom-label{width:24px;height:24px;border-radius:50%;border:2px dashed var(--border-bright);cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);flex-shrink:0;transition:border-color .12s}.color-custom-label:hover{border-color:var(--text-secondary)}.color-custom-label.active{border-color:#fff}.color-custom-label input[type=color]{display:none}.custom-plus{font-size:16px;color:var(--text-muted);line-height:1;font-weight:300}.builder-action-btn{display:block;width:calc(100% - 32px);margin:6px 16px 0;padding:10px 14px;border:none;border-radius:5px;font-size:13px;font-family:Inter,sans-serif;font-weight:500;cursor:pointer;text-align:center;transition:opacity .15s,transform .1s}.builder-action-btn:active{transform:scale(.98)}.builder-action-btn.primary{background:var(--color-sid);color:#fff}.builder-action-btn.primary:hover{opacity:.88}.builder-action-btn.secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border)}.builder-action-btn.secondary:hover{border-color:var(--border-bright);color:var(--text-primary)}.builder-action-btn.danger{background:transparent;color:var(--color-danger);border:1px solid rgba(255,77,77,.35)}.builder-action-btn.danger:hover{background:#ff4d4d14;border-color:var(--color-danger)}.drawing-mode-hint{margin:0 16px 10px;padding:8px 10px;background:#3b9eff14;border-left:2px solid var(--color-sid);border-radius:0 4px 4px 0;font-size:12px;color:var(--text-secondary);line-height:1.5}.manual-point-section{padding:0 16px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}.manual-point-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-family:JetBrains Mono,monospace;margin-bottom:6px}.coord-row{display:flex;gap:5px;align-items:center}.coord-input{flex:1;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;padding:6px 8px;color:var(--text-primary);font-size:12px;font-family:JetBrains Mono,monospace;outline:none;min-width:0;transition:border-color .15s}.coord-input:focus{border-color:var(--color-sid)}.manual-add-btn{width:28px;height:28px;background:var(--color-sid);border:none;border-radius:4px;color:#fff;font-size:18px;font-weight:300;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;line-height:1;transition:opacity .15s}.manual-add-btn:hover{opacity:.82}.sequence-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 4px}.sequence-header .section-label{padding:12px 0 4px}.sequence-empty{padding:12px 16px;font-size:12px;color:var(--text-muted);line-height:1.5}.sequence-list{padding:0 8px}.seq-item{display:flex;align-items:flex-start;gap:6px;padding:7px 8px;border-radius:5px;transition:background .1s}.seq-item:hover{background:var(--bg-tertiary)}.seq-number{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-muted);width:16px;flex-shrink:0;padding-top:2px;text-align:right}.seq-type-icon{font-size:9px;color:var(--color-sid);flex-shrink:0;padding-top:3px}.seq-info{flex:1;min-width:0}.seq-ident{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seq-restrictions{font-size:11px;color:var(--text-secondary);margin-top:2px;line-height:1.4}.seq-restrictions.empty{color:var(--text-muted);font-style:italic}.builder-main-menu-header{display:flex;align-items:center;justify-content:space-between;padding-right:16px}.builder-locked-view{padding:16px}.builder-locked-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;min-height:200px;padding:36px 20px;background:#ffb5470a;border:1px solid rgba(255,181,71,.18);border-radius:10px;cursor:pointer;transition:background .2s,border-color .2s;color:#ffb547a6}.builder-locked-screen:hover{background:#ffb54717;border-color:#ffb54766;color:#ffb547e6}.builder-lock-svg{display:block;transition:color .2s}.builder-locked-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.builder-locked-sub{font-size:10px;color:var(--text-muted);margin-top:2px}.builder-section-topbar{display:flex;justify-content:flex-end;padding:4px 12px 0}.builder-unlock-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;background:transparent;border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.builder-unlock-icon:hover{background:var(--bg-tertiary);border-color:var(--border-bright);color:var(--text-secondary)}.json-io-row{display:flex;gap:8px;margin:8px 16px 0}.json-io-btn{flex:1;background:none;border:1px solid var(--border);border-radius:5px;padding:6px 10px;cursor:pointer;font-size:11px;font-family:JetBrains Mono,monospace;color:var(--text-muted);letter-spacing:.03em;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.json-io-btn:hover{border-color:var(--border-bright);color:var(--text-secondary);background:#ffffff0a}.seq-remove{background:none;border:none;color:var(--text-muted);font-size:15px;cursor:pointer;padding:0 2px;line-height:1;flex-shrink:0;border-radius:3px;transition:color .12s,background .12s}.seq-remove:hover{color:var(--color-danger);background:#ff4d4d1a}.seq-actions{display:flex;gap:2px;flex-shrink:0;align-items:center}.seq-btn{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:3px 4px;line-height:1;border-radius:3px;transition:color .12s,background .12s}.seq-btn:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.seq-btn:disabled{opacity:.2;cursor:not-allowed}.seq-btn.seq-remove:hover{color:var(--color-danger);background:#ff4d4d1a}.seq-btn.seq-edit:hover{color:var(--color-sid);background:#3b9eff1a}.measurement-toggle-row{padding:6px 16px 4px;border-top:1px solid var(--border);margin-top:4px}.measurement-toggle-label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,monospace;letter-spacing:.04em}.measurement-toggle-label:hover{color:var(--text-secondary)}.toggle-checkbox{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:12px;height:12px;border:1.5px solid var(--border-bright);border-radius:2px;background:transparent;cursor:pointer;flex-shrink:0;position:relative;transition:background .15s,border-color .15s}.toggle-checkbox:checked{background:var(--color-sid);border-color:var(--color-sid)}.toggle-checkbox:checked:after{content:"";position:absolute;left:2px;top:-1px;width:4px;height:7px;border:1.5px solid #fff;border-top:none;border-left:none;transform:rotate(45deg)}.builder-actions{padding-top:6px;border-top:1px solid var(--border);margin-top:8px}.export-hint{padding:0 16px 10px;font-size:12px;color:var(--text-muted);line-height:1.5}.export-json{margin:0 16px 8px;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;font-family:JetBrains Mono,monospace;font-size:10px;color:var(--color-iap);line-height:1.6;overflow-x:auto;white-space:pre;max-height:260px;overflow-y:auto}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080ebf;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:9999;padding:20px}.modal-overlay.is-visible{display:flex}.modal-box{background:var(--bg-secondary);border:1px solid var(--border-bright);border-radius:10px;padding:24px;width:100%;max-width:420px;box-shadow:var(--shadow-md),0 0 0 1px #3b9eff1a;animation:modal-in .18s ease}@keyframes modal-in{0%{opacity:0;transform:scale(.96) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{margin-bottom:20px}.modal-tag{font-family:JetBrains Mono,monospace;font-size:9px;letter-spacing:.12em;color:var(--color-sid);text-transform:uppercase;display:block;margin-bottom:5px}.modal-point-name{font-family:JetBrains Mono,monospace;font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.modal-fields{display:flex;flex-direction:column;gap:14px;margin-bottom:10px}.modal-field-group{display:flex;flex-direction:column;gap:5px}.modal-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.07em;font-family:JetBrains Mono,monospace}.modal-pair-row{display:flex;gap:8px;align-items:stretch}.modal-select{flex:0 0 130px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;padding:9px 28px 9px 10px;color:var(--text-primary);font-size:12px;font-family:JetBrains Mono,monospace;outline:none;cursor:pointer;transition:border-color .15s;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23626d7c' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.modal-select:focus{border-color:var(--color-sid)}.modal-select option{background:var(--bg-secondary);color:var(--text-primary)}.modal-value-input{flex:1;min-width:0}.modal-value-input:disabled{opacity:.3;cursor:not-allowed;-webkit-user-select:none;user-select:none}.modal-input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;padding:9px 12px;color:var(--text-primary);font-size:13px;font-family:Inter,sans-serif;outline:none;transition:border-color .15s,opacity .15s}.modal-input:focus{border-color:var(--color-sid)}.modal-input::placeholder{color:var(--text-muted)}.modal-hint{font-size:10px;color:var(--text-muted);text-align:center;padding:6px 0 16px;font-family:JetBrains Mono,monospace;letter-spacing:.04em}.modal-actions{display:flex;gap:8px}.modal-btn{flex:1;padding:10px;border-radius:5px;font-size:13px;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;border:none;transition:opacity .15s}.modal-btn:hover{opacity:.85}.modal-btn-skip{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border)}.modal-btn-confirm{background:var(--color-sid);color:#fff}.tab-bar{display:flex;gap:2px;padding:8px 8px 0;border-bottom:1px solid var(--border);background:var(--bg-primary);flex-shrink:0}.tab{flex:1;padding:7px 10px;background:none;border:none;border-bottom:2px solid transparent;border-radius:5px 5px 0 0;font-size:calc(11px * var(--ui-scale));font-family:JetBrains Mono,monospace;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;transition:color .15s,background .15s,border-color .15s;margin-bottom:-1px}.tab:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.tab.active{color:var(--text-primary);border-bottom-color:var(--color-sid);background:var(--bg-tertiary)}.view-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center;gap:10px}.view-placeholder-icon{font-size:36px;opacity:.2;line-height:1}.view-placeholder-title{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em}.view-placeholder-text{font-size:12px;color:var(--text-muted);line-height:1.6;max-width:190px}.seg-measurement-label{background:none!important;border:none!important;box-shadow:none!important;pointer-events:none!important;display:flex;align-items:center;justify-content:center;transform:translate(-50%) translateY(-50%);white-space:nowrap}.seg-measurement-label span{font-family:JetBrains Mono,monospace;font-size:calc(10px * var(--map-label-scale));font-weight:600;color:#fffc;letter-spacing:.05em;text-shadow:0 0 3px rgba(0,0,0,1),0 0 6px rgba(0,0,0,.9),0 0 12px rgba(0,0,0,.6)}.fix-label-ident{font-size:11px;font-weight:700;letter-spacing:.06em;line-height:1.3}.fix-label-restriction{font-size:9px;font-weight:500;color:#ffd796e6;letter-spacing:.04em;margin-top:1px;line-height:1.3}.fix-label-highlight{color:#fff;text-shadow:0 0 4px #3b9eff,0 0 10px #3b9eff,0 0 18px rgba(59,158,255,.7)}.proc-hover-tooltip{background:#0c121ce0!important;border:1px solid rgba(59,158,255,.35)!important;border-radius:5px!important;color:var(--text-primary)!important;font-family:JetBrains Mono,monospace!important;font-size:11px!important;font-weight:600!important;letter-spacing:.05em!important;padding:5px 10px!important;box-shadow:0 2px 8px #00000080!important;white-space:nowrap!important}.proc-hover-tooltip:before{display:none!important}.seq-warning-banner{margin:0 8px 6px;padding:7px 10px;background:#ffb5471a;border:1px solid rgba(255,181,71,.4);border-radius:5px;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--color-star);letter-spacing:.03em;animation:warning-in .2s ease}@keyframes warning-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.view-section{padding:0 0 12px}.view-section-header{display:flex;align-items:center;gap:6px;padding:12px 16px 4px}.view-section-header .section-label{flex:1}.viewer-meas-btn{padding:3px 8px;border:1px solid var(--border-bright);border-radius:4px;background:transparent;color:var(--text-muted);font-size:10px;font-family:JetBrains Mono,monospace;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.viewer-meas-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.viewer-meas-btn.active{background:#3b9eff26;border-color:var(--color-accent);color:var(--color-accent)}.viewer-sort-row{display:flex;align-items:center;gap:8px;padding:4px 16px 8px}.viewer-sort-label{font-size:10px;color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.viewer-sort-select{flex:1;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);font-size:11px;padding:3px 6px;cursor:pointer;outline:none}.viewer-sort-select:focus{border-color:var(--color-accent)}.viewer-group{margin-bottom:4px}.viewer-group-header{display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s}.viewer-group-header:hover{background:#3b9eff12}.viewer-group-chevron{font-size:10px;color:var(--text-muted);width:10px;text-align:center}.viewer-group-name{flex:1;font-size:calc(11px * var(--ui-scale));font-weight:700;font-family:JetBrains Mono,monospace;color:var(--text-primary);letter-spacing:.04em;text-transform:uppercase}.viewer-group-count{font-size:calc(10px * var(--ui-scale));color:var(--text-muted);background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:1px 6px}.viewer-group-body{padding-left:8px;margin-top:2px}.viewer-subgroup{margin-bottom:2px}.viewer-subgroup-header{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:4px 6px 2px}.viewer-subgroup-body{padding-left:4px}.viewer-runway-group{margin-bottom:2px}.viewer-runway-header{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:4px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s;margin-bottom:2px}.viewer-runway-header:hover{background:#3b9eff0a}.viewer-runway-chevron{font-size:9px;color:var(--text-muted);width:10px;text-align:center}.viewer-runway-name{flex:1;font-size:calc(10.5px * var(--ui-scale));font-weight:700;font-family:JetBrains Mono,monospace;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.viewer-runway-count{font-size:calc(9.5px * var(--ui-scale));color:var(--text-muted);background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:.5px 5px}.viewer-runway-body{padding-left:6px;margin-top:1px}.viewer-type-group{margin-bottom:2px}.viewer-type-header{display:flex;align-items:center;gap:6px;padding:3px 6px;background:#ffffff03;border:1px dashed rgba(255,255,255,.03);border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .12s;margin-bottom:2px}.viewer-type-header:hover{background:#3b9eff08}.viewer-type-chevron{font-size:8px;color:var(--text-muted);width:10px;text-align:center}.viewer-type-name{flex:1;font-size:calc(9.5px * var(--ui-scale));font-weight:700;font-family:JetBrains Mono,monospace;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.viewer-type-count{font-size:calc(8.5px * var(--ui-scale));color:var(--text-muted);background:#ffffff05;border:1px solid rgba(255,255,255,.03);border-radius:6px;padding:.2px 4px}.viewer-type-body{padding-left:6px;margin-top:1px}.saved-proc-list{display:flex;flex-direction:column;padding:0 8px;gap:2px}.saved-proc-item{display:flex;flex-direction:column;padding:6px 8px;border-radius:6px;transition:background .1s;cursor:default}.saved-proc-item:hover{background:var(--bg-tertiary)}.saved-proc-header{display:flex;align-items:center;gap:8px}.proc-common-preview{font-size:calc(10px * var(--ui-scale));color:var(--text-tertiary);padding:2px 0 2px 4px;font-family:JetBrains Mono,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proc-transitions-list{display:flex;flex-direction:column;gap:2px;padding:3px 0 2px 4px}.proc-transition-item{display:flex;align-items:center;gap:5px;background:#ffffff08;border:1px solid var(--border-color);border-radius:3px;padding:3px 6px;font-size:calc(10px * var(--ui-scale))}.proc-transition-icon{color:#ffb547;font-size:11px;flex-shrink:0}.proc-transition-body{flex:1;min-width:0;display:flex;align-items:center;gap:5px;overflow:hidden}.proc-transition-name{font-weight:500;color:var(--text-secondary);font-family:JetBrains Mono,monospace;white-space:nowrap}.proc-transition-fix{font-size:9px;color:var(--text-tertiary);white-space:nowrap}.proc-transition-pts{font-size:9px;color:var(--text-muted);flex-shrink:0}.saved-proc-badge{font-family:JetBrains Mono,monospace;font-size:calc(9px * var(--ui-scale));font-weight:700;letter-spacing:.08em;color:var(--text-muted);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:3px;padding:2px 5px;flex-shrink:0;text-transform:uppercase}.saved-proc-info{flex:1;min-width:0}.saved-proc-name{font-family:JetBrains Mono,monospace;font-size:calc(12px * var(--ui-scale));font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-proc-actions{display:flex;gap:3px;flex-shrink:0}.proc-action-btn{background:none;border:none;cursor:pointer;padding:4px 5px;border-radius:4px;font-size:13px;line-height:1;color:var(--text-muted);transition:color .12s,background .12s}.proc-action-btn:hover{background:var(--bg-secondary);color:var(--text-secondary)}.proc-visibility-btn.proc-hidden{opacity:.35}.proc-edit-btn:hover{color:var(--color-sid)!important;background:#3b9eff1a!important}.proc-delete-btn:hover{color:var(--color-danger)!important;background:#ff4d4d1a!important}.saved-proc-sub{font-family:JetBrains Mono,monospace;font-size:calc(9px * var(--ui-scale));color:var(--text-muted);letter-spacing:.04em;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.view-search-wrapper{position:relative;padding:8px 8px 4px}.view-search-input{width:100%;background:var(--bg-tertiary);border:1px solid var(--border-bright);border-radius:6px;padding:7px 30px 7px 10px;color:var(--text-primary);font-size:calc(12px * var(--ui-scale));font-family:JetBrains Mono,monospace;outline:none;transition:border-color .15s;box-sizing:border-box}.view-search-input:focus{border-color:var(--color-sid)}.view-search-input::placeholder{color:var(--text-muted)}.builder-saved-section{border-top:1px solid var(--border);margin-top:10px;padding-top:0}.builder-saved-header{display:flex;align-items:center;justify-content:space-between;padding:0 16px 4px}.proc-fix-label{background:transparent!important;border:none!important;box-shadow:none!important;transform:translate(6px,-100%);font-family:JetBrains Mono,monospace!important;color:var(--text-primary)!important;text-shadow:0 0 4px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.8)!important;white-space:nowrap!important;pointer-events:none!important}.airport-icon{background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.airport-icon-inner{display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer;white-space:nowrap;transform:translate(-50%,-50%) scale(var(--map-symbol-scale));opacity:.375;transition:opacity .15s}.airport-symbol{font-size:16px;color:#ffffffd9;line-height:1;text-shadow:0 0 4px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.8);transition:color .15s,opacity .15s}.apt-border-sbkp .airport-symbol{-webkit-text-stroke:.8px #4ddb8d;color:transparent!important;text-shadow:0 0 2px rgba(77,219,141,.4)!important}.apt-border-sbkp .airport-label{-webkit-text-stroke:.25px #4ddb8d;color:transparent!important;text-shadow:0 0 1px rgba(77,219,141,.3)!important}.apt-border-sbkp:hover .airport-symbol,.apt-border-sbkp:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#4ddb8d}.apt-border-sbgr .airport-symbol{-webkit-text-stroke:.8px #ffd84a;color:transparent!important;text-shadow:0 0 2px rgba(255,216,74,.4)!important}.apt-border-sbgr .airport-label{-webkit-text-stroke:.25px #ffd84a;color:transparent!important;text-shadow:0 0 1px rgba(255,216,74,.3)!important}.apt-border-sbgr:hover .airport-symbol,.apt-border-sbgr:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#ffd84a}.apt-border-sbsp .airport-symbol{-webkit-text-stroke:.8px #fb923c;color:transparent!important;text-shadow:0 0 2px rgba(251,146,60,.4)!important}.apt-border-sbsp .airport-label{-webkit-text-stroke:.25px #fb923c;color:transparent!important;text-shadow:0 0 1px rgba(251,146,60,.3)!important}.apt-border-sbsp:hover .airport-symbol,.apt-border-sbsp:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#fb923c}.apt-border-default .airport-symbol{-webkit-text-stroke:.8px #e2e8f0;color:transparent!important;text-shadow:0 0 2px rgba(226,232,240,.4)!important}.apt-border-default .airport-label{-webkit-text-stroke:.25px #b4d2ff;color:transparent!important;text-shadow:0 0 1px rgba(180,210,255,.3)!important}.apt-border-default:hover .airport-symbol,.apt-border-default:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#ffffff}.apt-border-yssy .airport-symbol{-webkit-text-stroke:.8px #ffd84a;color:transparent!important;text-shadow:0 0 2px rgba(255,216,74,.4)!important}.apt-border-yssy .airport-label{-webkit-text-stroke:.25px #ffd84a;color:transparent!important;text-shadow:0 0 1px rgba(255,216,74,.3)!important}.apt-border-yssy:hover .airport-symbol,.apt-border-yssy:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#ffd84a}.apt-border-ysbk .airport-symbol{-webkit-text-stroke:.8px #fb923c;color:transparent!important;text-shadow:0 0 2px rgba(251,146,60,.4)!important}.apt-border-ysbk .airport-label{-webkit-text-stroke:.25px #fb923c;color:transparent!important;text-shadow:0 0 1px rgba(251,146,60,.3)!important}.apt-border-ysbk:hover .airport-symbol,.apt-border-ysbk:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#fb923c}.apt-border-ysri .airport-symbol{-webkit-text-stroke:.8px #4ddb8d;color:transparent!important;text-shadow:0 0 2px rgba(77,219,141,.4)!important}.apt-border-ysri .airport-label{-webkit-text-stroke:.25px #4ddb8d;color:transparent!important;text-shadow:0 0 1px rgba(77,219,141,.3)!important}.apt-border-ysri:hover .airport-symbol,.apt-border-ysri:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#4ddb8d}.apt-border-sy-secondary .airport-symbol{-webkit-text-stroke:.8px #a78bfa;color:transparent!important;text-shadow:0 0 2px rgba(167,139,250,.4)!important}.apt-border-sy-secondary .airport-label{-webkit-text-stroke:.25px #a78bfa;color:transparent!important;text-shadow:0 0 1px rgba(167,139,250,.3)!important}.apt-border-sy-secondary:hover .airport-symbol,.apt-border-sy-secondary:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#a78bfa}.airport-label{font-family:JetBrains Mono,monospace;font-size:calc(8px * var(--map-label-scale));font-weight:700;letter-spacing:.06em;color:#b4d2ffa6;text-shadow:0 0 3px rgba(0,0,0,1),0 0 6px rgba(0,0,0,.9);white-space:nowrap}.airport-icon-inner:hover{opacity:1}.airport-icon-inner:hover .airport-symbol{color:#fff}.airport-icon-inner:hover .airport-label{color:#c8e6ffe6}.airport-icon-regional{background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.airport-icon-inner-regional{display:flex;flex-direction:column;align-items:center;gap:1px;cursor:pointer;white-space:nowrap;transform:translate(-50%,-50%) scale(var(--map-symbol-scale));opacity:.375;transition:opacity .15s}.airport-symbol-regional{font-size:11px;color:#be9b4699;line-height:1;text-shadow:0 0 4px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.8);transition:color .15s}.airport-label-regional{font-family:JetBrains Mono,monospace;font-size:calc(7px * var(--map-label-scale));font-weight:600;letter-spacing:.04em;color:#a5823c73;text-shadow:0 0 3px rgba(0,0,0,1),0 0 6px rgba(0,0,0,.9);white-space:nowrap}.airport-icon-inner-regional:hover{opacity:1}.airport-icon-inner-regional:hover .airport-symbol-regional{color:#e6b950e6}.airport-icon-inner-regional:hover .airport-label-regional{color:#cda046cc}.apt-border-regional-tma .airport-symbol{-webkit-text-stroke:.8px #c77dff;color:transparent!important;text-shadow:0 0 2px rgba(199,125,255,.4)!important}.apt-border-regional-tma .airport-label{-webkit-text-stroke:.25px #c77dff;color:transparent!important;text-shadow:0 0 1px rgba(199,125,255,.3)!important}.apt-border-regional-tma:hover .airport-symbol,.apt-border-regional-tma:hover .airport-label{color:transparent!important;-webkit-text-stroke-color:#d89fff}.heliport-icon{background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.heliport-icon-inner{display:flex;align-items:center;justify-content:center;width:13px;height:13px;background:#00c8642d;border:1.5px solid rgba(0,200,100,.6);border-radius:50%;transform:translate(-50%,-50%);cursor:pointer;transition:background .15s,border-color .15s}.heliport-symbol{font-size:7px;font-weight:800;color:#00d76ecc;line-height:1;text-shadow:0 0 3px rgba(0,0,0,.9)}.heliport-icon-inner:hover{background:#00c86442;border-color:#00c864e6}.heliport-icon-inner:hover .heliport-symbol{color:#00eb78}.map-context-menu{position:fixed;background:var(--bg-secondary);border:1px solid var(--border-bright);border-radius:6px;padding:4px 0;z-index:9000;min-width:170px;box-shadow:0 4px 20px #000000a6,0 0 0 1px #3b9eff14;font-family:Inter,sans-serif;font-size:12px;animation:ctx-menu-in .1s ease}@keyframes ctx-menu-in{0%{opacity:0;transform:scale(.96) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.map-context-menu-item{padding:8px 14px;cursor:pointer;color:var(--text-secondary);transition:background .1s,color .1s;-webkit-user-select:none;user-select:none}.map-context-menu-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.map-context-menu-item.danger:hover{background:#ff4d4d1a;color:var(--color-danger)}.map-context-menu-item.transition-add:hover{background:#3b9eff1a;color:var(--color-accent)}.map-context-menu-separator{height:1px;background:var(--border);margin:3px 0}.drop-point-section{padding:0 16px 10px;border-bottom:1px solid var(--border)}.drop-point-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:var(--bg-tertiary);border:1px solid var(--border-bright);border-radius:5px;color:var(--text-secondary);font-size:12px;font-family:JetBrains Mono,monospace;letter-spacing:.03em;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.drop-point-btn:hover{border-color:var(--color-iap);color:var(--color-iap)}.drop-point-btn.active{background:#4ddb8d1a;border-color:var(--color-iap);color:var(--color-iap)}.drop-point-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0;opacity:.7;transition:opacity .15s}.drop-point-btn.active .drop-point-dot{opacity:1}.drop-coords-row{display:flex;align-items:center;gap:4px;margin-top:6px;padding:0 2px}.drop-coord-input{flex:1 1 0;min-width:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:10px;padding:4px 5px;text-align:center;-moz-appearance:textfield}.drop-coord-input::-webkit-outer-spin-button,.drop-coord-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.drop-coord-input:focus{outline:none;border-color:var(--accent-primary);color:var(--text-primary)}.drop-coord-input::placeholder{color:#ffffff40;font-size:9px}.drop-coord-add-btn{flex-shrink:0;width:24px;height:24px;background:var(--bg-tertiary);border:1px solid var(--border-bright);border-radius:4px;color:var(--text-muted);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s}.drop-coord-add-btn:hover{border-color:var(--color-iap);color:var(--color-iap)}.inline-clear-row{text-align:center;margin-top:2px}.inline-clear-link{background:transparent;border:none;color:var(--text-muted);font-family:JetBrains Mono,monospace;font-size:9px;cursor:pointer;letter-spacing:.04em;padding:2px 4px;border-radius:3px;transition:color .15s}.inline-clear-link:hover{color:var(--text-secondary)}.modal-holding-group{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}.modal-holding-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;color:var(--text-primary);font-weight:600;letter-spacing:.03em}.modal-holding-chk{width:14px;height:14px;cursor:pointer;accent-color:var(--color-iap)}.modal-holding-fields{margin-top:8px}.modal-holding-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.modal-sublabel{font-size:11px;color:var(--text-muted);white-space:nowrap;min-width:100px}.modal-holding-input{flex:1;height:30px;padding:0 8px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:12px}.modal-holding-input::placeholder{color:var(--text-muted);opacity:.6}.modal-holding-input:focus{outline:none;border-color:var(--color-iap)}.modal-holding-select{flex:1}.holding-badge-marker{background:transparent!important;border:none!important}.holding-badge-inner{display:flex;flex-direction:column;align-items:center;transform:translate(8px,-42px);pointer-events:none}.holding-badge-h{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:800;line-height:1;text-shadow:0 0 8px currentColor}.holding-badge-info{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;color:#ffb547;text-shadow:0 1px 3px rgba(0,0,0,.8);letter-spacing:.03em;white-space:nowrap;margin-top:2px}.fix-label-holding{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;color:#ffb547;text-shadow:0 0 6px rgba(255,181,71,.6);margin-top:2px;white-space:nowrap}.draggable-custom-marker{display:flex;align-items:center;justify-content:center;background:transparent!important;border:none!important;cursor:grab}.draggable-custom-marker-inner{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;border:2px solid;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 0 8px #0009,0 0 4px currentColor;transition:transform .08s;pointer-events:auto;cursor:grab}.draggable-custom-marker-inner:hover{transform:scale(1.25)}.draggable-custom-marker-inner:active{cursor:grabbing;transform:scale(1.15)}.draggable-diamond{font-size:11px;line-height:1;pointer-events:none;-webkit-user-select:none;user-select:none}.custom-point-label{background:#000000a6;border:1px solid rgba(255,255,255,.25);border-radius:3px;color:#e8e8e8;font-size:10px;font-family:monospace;padding:1px 4px;white-space:nowrap;pointer-events:none}.draggable-custom-marker-inner.pending{border-style:dashed;opacity:.65;animation:pending-pulse 1.2s ease-in-out infinite}@keyframes pending-pulse{0%,to{opacity:.45}50%{opacity:.85}}.compass-rose{position:absolute;bottom:36px;right:12px;z-index:800;pointer-events:auto;opacity:.5;transition:opacity .2s ease;filter:drop-shadow(0 2px 8px rgba(0,0,0,.7)) drop-shadow(0 0 4px rgba(0,0,0,.9));animation:rose-fade-in .6s ease .3s both}.compass-rose:hover{opacity:1!important}@keyframes rose-fade-in{0%{opacity:0;transform:scale(.88)}to{opacity:.5;transform:scale(1)}}.map-toolbar{position:fixed;right:10px;top:130px;z-index:800;display:flex;flex-direction:column;gap:5px;overflow:visible}.map-toolbar-scroll-wrapper{display:flex;flex-direction:column;align-items:flex-end;gap:5px;width:300px;padding-left:240px;margin-left:-240px;padding-right:12px;scrollbar-gutter:stable;overflow-x:visible;overflow-y:hidden;pointer-events:none;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.map-toolbar-scroll-wrapper:after{content:"";position:absolute;top:0;right:-10px;width:60px;height:100%;pointer-events:auto;z-index:-1}.map-toolbar-scroll-wrapper::-webkit-scrollbar{display:none}.map-toolbar-scroll-wrapper>*{pointer-events:auto}@media (max-height: 850px){.map-toolbar-scroll-wrapper{max-height:calc(100vh - 150px);overflow-y:auto;padding-bottom:20px}.map-toolbar-scroll-wrapper:hover{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}.map-toolbar-scroll-wrapper:hover::-webkit-scrollbar{display:block;width:3px}.map-toolbar-scroll-wrapper::-webkit-scrollbar-track{background:transparent}.map-toolbar-scroll-wrapper::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}}@media (hover: none),(pointer: coarse){.map-toolbar-scroll-wrapper{width:48px!important;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;pointer-events:auto!important;overflow-y:auto!important}.map-toolbar-scroll-wrapper:after{display:none!important}}.toolbar-separator{height:1px;width:24px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);margin:12px auto 8px;flex-shrink:0}.toolbar-category-label{font-family:JetBrains Mono,monospace;font-size:calc(8px * var(--ui-scale));font-weight:700;color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.1em;margin:2px 0 3px;-webkit-user-select:none;user-select:none;opacity:1;pointer-events:none;flex-shrink:0}.map-tool-btn{position:relative;width:36px;height:36px;background:#0a121cd1;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:0;transition:border-color .15s,color .15s,background .15s,box-shadow .15s;flex-shrink:0}.map-tool-btn:hover{border-color:#00d4ff;color:#00d4ff;background:#00d4ff14}.map-tool-btn.active{background:#00d4ff1f;border-color:#00d4ff;color:#00d4ff;box-shadow:0 0 0 2px #00d4ff38,inset 0 0 10px #00d4ff1a}.map-tool-btn.mode-active{background:#c77dff26!important;border-color:#c77dff!important;color:#c77dff!important;box-shadow:0 0 0 2px #c77dff40,inset 0 0 10px #c77dff1f!important}.map-tool-tooltip{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(4px);background:#070e18fa;border:1px solid rgba(255,255,255,.14);border-radius:7px;padding:10px 13px;width:215px;box-shadow:0 4px 20px #000000a6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;white-space:nowrap}.map-tool-btn:hover .map-tool-tooltip{opacity:1;transform:translateY(-50%) translate(0)}.map-tool-btn:first-of-type .map-tool-tooltip{top:0;transform:translate(4px)}.map-tool-btn:first-of-type:hover .map-tool-tooltip{transform:translate(0)}.map-tool-btn:last-of-type .map-tool-tooltip{top:auto;bottom:0;transform:translate(4px)}.map-tool-btn:last-of-type:hover .map-tool-tooltip{transform:translate(0)}.tooltip-title{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;color:var(--text-primary);letter-spacing:.04em;margin-bottom:5px}.tooltip-body{font-size:11px;color:var(--text-secondary);line-height:1.5;white-space:normal;margin-bottom:8px}.tooltip-shortcuts{display:flex;flex-direction:column;gap:4px;border-top:1px solid rgba(255,255,255,.08);padding-top:7px}.tooltip-shortcut-row{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--text-muted)}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:3px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;color:var(--text-primary);letter-spacing:.05em;flex-shrink:0}.mv-telemetry-label{position:fixed;z-index:9500;pointer-events:none;display:flex;align-items:center;gap:4px;padding:5px 10px;background:#050e18d1;border:1px solid rgba(255,152,0,.45);border-radius:5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 12px #000000a6,0 0 0 1px #ff98001f;white-space:nowrap}.mv-tel-dist{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;color:#ff9800;letter-spacing:.04em}.mv-tel-sep{font-family:JetBrains Mono,monospace;font-size:11px;color:#ff980073}.mv-tel-brg{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;color:#ff9800;letter-spacing:.04em}.mv-tel-snap{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;color:#22c55e;letter-spacing:.04em}.mv-measurement-label{background:none!important;border:none!important;box-shadow:none!important;pointer-events:auto!important;white-space:nowrap;cursor:pointer}.mv-lbl-inner{display:flex;flex-direction:column;gap:1px;padding:3px 8px;background:#1e0f0033;border-radius:4px}.mv-measurement-label:hover .mv-lbl-inner{background:#321e0059;box-shadow:0 0 8px #ff980040}.mv-lbl-inner span{font-family:JetBrains Mono,monospace;font-size:calc(9px * var(--map-label-scale, 1));letter-spacing:.03em;text-shadow:0 1px 2px rgba(0,0,0,.6)}.mv-lbl-dist{font-size:calc(10px * var(--map-label-scale, 1))!important;font-weight:700;color:#ff9800f2}.mv-lbl-brg{font-weight:600;color:#ffc864d1}.mv-lbl-eta{font-weight:600;color:#4ade80e6}.mv-lbl-val{font-weight:600;color:#ffaf50e6}.mv-measurement-label.mv-selected .mv-lbl-inner{background:#28000033}.mv-measurement-label.mv-selected .mv-lbl-val{color:#ff5050f2}.ac-trk{color:#c8d2dce6!important}.ac-wtc{font-weight:700;margin-left:4px}.ac-wtc-S{color:#ef4444}.ac-wtc-H{color:#f97316}.ac-wtc-M{color:#facc15}.ac-wtc-L{color:#22c55e}.airspace-hover-tooltip.leaflet-tooltip{background:#070e18eb!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:5px!important;color:var(--text-primary)!important;font-family:Inter,sans-serif!important;font-size:11px!important;padding:6px 10px!important;box-shadow:0 2px 10px #0000008c!important;line-height:1.45;white-space:normal;max-width:260px;pointer-events:none}.airspace-hover-tooltip.leaflet-tooltip:before{display:none!important}.airspace-hover-tooltip .ah-name{font-weight:700;color:#fde68a;margin-bottom:2px;display:block}.airspace-hover-tooltip .ah-row{display:block;color:#dce2ece6;font-size:10.5px}.airspace-hover-tooltip .ah-key{color:#a0a8b4d9;margin-right:4px}.airspace-border-hit{pointer-events:stroke!important;cursor:inherit!important}.mv-context-menu{position:fixed;background:var(--bg-secondary);border:1px solid rgba(255,152,0,.35);border-radius:6px;padding:4px 0;z-index:9000;min-width:180px;box-shadow:0 4px 20px #000000a6,0 0 0 1px #ff980014;font-family:Inter,sans-serif;font-size:calc(12px * var(--ui-scale));animation:mv-ctx-in .1s ease}@keyframes mv-ctx-in{0%{opacity:0;transform:scale(.96) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.mv-ctx-item{padding:8px 14px;cursor:pointer;color:var(--text-secondary);transition:background .1s,color .1s;-webkit-user-select:none;user-select:none}.mv-ctx-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.mv-ctx-item.danger:hover{background:#ff4d4d1a;color:var(--color-danger)}.mv-ctx-separator{height:1px;background:var(--border);margin:3px 0}.ed-context-menu{border-color:#c77dff66!important;box-shadow:0 4px 20px #000000a6,0 0 0 1px #c77dff1a!important}.navaid-icon{background:transparent!important;border:none!important;box-shadow:none!important;overflow:visible!important}.navaid-icon svg{transform:scale(var(--map-symbol-scale))!important}.navaid-icon-inner{position:absolute;top:0;left:0;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;cursor:pointer;pointer-events:auto}.navaid-label-inline{background:transparent;border:none;box-shadow:none;padding:1px 3px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.06em;white-space:nowrap;text-shadow:0 0 3px rgba(0,0,0,1),0 0 6px rgba(0,0,0,.9);margin-bottom:2px;transition:color .2s ease,text-shadow .2s ease}.navaid-label-inline--vor{color:#46a0ff}.navaid-label-inline--ndb{color:#ff5abe}.navaid-icon-inner:hover .navaid-label-inline--vor{color:#9bd0ff;text-shadow:0 0 8px rgba(155,208,255,.5)}.navaid-icon-inner:hover .navaid-label-inline--ndb{color:#ffb1df;text-shadow:0 0 8px rgba(255,177,223,.5)}.navaid-icon-inner:hover svg circle[fill="#46a0ff"],.navaid-icon-inner:hover svg circle[fill="#ff5abe"]{fill:#fff}.navaid-icon-inner:hover svg polygon{stroke:#9bd0ff!important}.navaid-icon-inner:hover svg circle[stroke="#ff5abe"]{stroke:#ffb1df!important}.fix-marker-svg{transition:stroke .2s ease,fill .2s ease,fill-opacity .2s ease,stroke-width .2s ease}.fix-marker-svg:hover{stroke:#fff!important;fill:#fff!important;fill-opacity:1!important;stroke-width:2px!important}.leaflet-control-layers-toggle{background-color:#0a121cd1!important;border:1px solid rgba(255,255,255,.12)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:6px!important;width:36px!important;height:36px!important;filter:invert(.75) sepia(.1)}.leaflet-control-layers-toggle:hover{border-color:#ffffff47!important}.leaflet-control-layers-expanded{background:#0a121ce0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:6px!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;box-shadow:0 4px 20px #0009!important;padding:8px 12px!important;color:var(--text-secondary)!important;font-family:JetBrains Mono,monospace!important;font-size:11px!important}.leaflet-control-layers-overlays label{display:flex;align-items:center;gap:7px;cursor:pointer;padding:3px 0;color:var(--text-secondary)!important;transition:color .12s}.leaflet-control-layers-overlays label:hover{color:var(--text-primary)!important}.leaflet-control-layers-selector{accent-color:#46a0ff;width:13px;height:13px;cursor:pointer}.sidebar-header-title-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.sidebar-header-title-row h2{margin-bottom:0}.data-status-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:#ffffff12;cursor:pointer;font-size:11px;line-height:1;padding:0;flex-shrink:0;transition:background .2s,border-color .2s,box-shadow .2s}.data-status-badge:hover{background:#ffffff24}.data-status-ok{color:#4ddb8d;border-color:#4ddb8d73}.data-status-ok:hover{box-shadow:0 0 8px #4ddb8d66}.data-status-outdated{color:#ffb547;border-color:#ffb54780}.data-status-outdated:hover{box-shadow:0 0 8px #ffb54773}.data-status-stale{color:#ff5a5a;border-color:#ff5a5a8c;animation:badge-pulse 2.2s ease-in-out infinite}@keyframes badge-pulse{0%,to{box-shadow:0 0 4px #ff5a5a59}50%{box-shadow:0 0 10px #ff5a5ab3}}.ds-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#030810c7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:ds-fade-in .18s ease}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}.ds-modal-overlay.ds-hidden{display:none}.ds-modal-box{position:relative;background:var(--bg-secondary);border:1px solid var(--border-bright);border-radius:10px;width:100%;max-width:640px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 40px #000000b3,0 0 0 1px #3b9eff14;overflow:hidden;animation:ds-modal-in .2s ease}@keyframes ds-modal-in{0%{opacity:0;transform:scale(.95) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.ds-close-btn{position:absolute;top:10px;right:12px;background:none;border:none;color:var(--text-muted);font-size:20px;line-height:1;cursor:pointer;padding:0;transition:color .15s;z-index:1}.ds-close-btn:hover{color:var(--text-primary)}.ds-modal-header{display:flex;align-items:center;gap:10px;padding:16px 20px 14px;flex-shrink:0}.ds-header-ok{background:#4ddb8d1a;border-bottom:1px solid rgba(77,219,141,.2)}.ds-header-outdated{background:#ffb5471a;border-bottom:1px solid rgba(255,181,71,.25)}.ds-header-stale{background:#ff5a5a1f;border-bottom:1px solid rgba(255,90,90,.3)}.ds-modal-icon{font-size:22px;line-height:1;flex-shrink:0}.ds-header-ok .ds-modal-icon{color:#4ddb8d}.ds-header-outdated .ds-modal-icon{color:#ffb547}.ds-header-stale .ds-modal-icon{color:#ff5a5a}.ds-modal-title{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;color:var(--text-primary);letter-spacing:.02em}.ds-disclaimer-banner{background:#ffb54712;border-bottom:1px solid rgba(255,181,71,.18);padding:10px 20px;font-size:11px;color:var(--text-secondary);line-height:1.6;flex-shrink:0}.ds-disclaimer-banner strong{color:#ffb547}.ds-table-wrapper{flex:1;overflow-y:auto;padding:12px 16px}.ds-table{width:100%;border-collapse:collapse;font-family:JetBrains Mono,monospace;font-size:11px}.ds-table th{text-align:left;color:var(--text-muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-bottom:1px solid var(--border)}.ds-table td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,.04);vertical-align:middle}.ds-row-stale{background:#ff5a5a0d}.ds-row-outdated{background:#ffb5470a}.ds-row-ok{background:transparent}.ds-col-name{color:var(--text-primary);white-space:nowrap;font-weight:600}.ds-col-age{color:var(--text-secondary);white-space:nowrap;min-width:60px}.ds-col-date{color:var(--text-muted);white-space:nowrap}.ds-col-status{white-space:nowrap}.ds-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.08em;font-family:JetBrains Mono,monospace}.ds-badge-ok{background:#4ddb8d26;color:#4ddb8d;border:1px solid rgba(77,219,141,.3)}.ds-badge-outdated{background:#ffb54726;color:#ffb547;border:1px solid rgba(255,181,71,.35)}.ds-badge-stale{background:#ff5a5a26;color:#ff5a5a;border:1px solid rgba(255,90,90,.35)}.ds-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--border);flex-shrink:0;gap:12px}.ds-no-show-label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}#ds-no-show-cb{accent-color:var(--color-sid);cursor:pointer}.ds-dismiss-btn{padding:8px 20px;background:var(--color-sid);color:#fff;border:none;border-radius:5px;font-size:12px;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;transition:opacity .15s;flex-shrink:0}.ds-dismiss-btn:hover{opacity:.85}.global-search-section{padding:10px 12px 8px;border-bottom:1px solid var(--border);flex-shrink:0}.global-search-row{display:flex;align-items:center;gap:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:0 8px;transition:border-color .15s,box-shadow .15s}.global-search-row:focus-within{border-color:var(--color-sid);box-shadow:0 0 0 2px #3b9eff26}.global-search-icon{font-size:13px;color:var(--text-muted);flex-shrink:0;pointer-events:none;-webkit-user-select:none;user-select:none;padding-right:6px}.global-search-input{flex:1;background:transparent;border:none;outline:none;padding:8px 0;font-size:12px;font-family:Inter,sans-serif;color:var(--text-primary);min-width:0;font-size:calc(12px * var(--ui-scale))}.global-search-input::placeholder{color:var(--text-muted);font-size:calc(11px * var(--ui-scale))}.global-search-clear{display:none;align-items:center;justify-content:center;background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:0 2px;flex-shrink:0;transition:color .12s}.global-search-clear:hover{color:var(--text-primary)}.global-search-meta{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin-top:5px;min-height:14px}.global-search-count{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;color:var(--color-sid);letter-spacing:.06em;text-transform:uppercase;background:#3b9eff1a;border:1px solid rgba(59,158,255,.25);border-radius:4px;padding:1px 6px}.global-search-legend{display:flex;flex-direction:column;align-items:stretch;gap:2px;min-height:66px;font-size:calc(9px * var(--ui-scale));color:var(--text-muted);font-family:JetBrains Mono,monospace;letter-spacing:.03em}.gsl-dot{display:inline-block;width:calc(6px * var(--ui-scale));height:calc(6px * var(--ui-scale));border-radius:50%;margin-left:4px;flex-shrink:0}.gsl-chip{display:flex;align-items:center;gap:6px;width:100%;background:transparent;border:none;padding:3px 6px;margin:0;cursor:pointer;color:inherit;font:inherit;text-align:left;border-radius:4px;transition:background-color .12s ease,opacity .12s ease}.gsl-chip:hover{background:#ffffff0f}.gsl-chip:focus-visible{outline:1px solid var(--color-sid);outline-offset:1px}.gsl-chip .gsl-label{flex:1 1 auto;min-width:0}.gsl-cat-count{margin-left:auto;flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;opacity:.75;color:inherit;padding:0 4px;border-radius:3px;background:#ffffff0f}.gsl-chip:not(.active){opacity:.45}.gsl-chip:not(.active) .gsl-label{text-decoration:line-through;text-decoration-thickness:1px}.gsl-chip:not(.active) .gsl-dot{filter:grayscale(.7)}.global-search-highlight{background:transparent!important;border:none!important;overflow:visible!important}.gsh-ring{width:18px;height:18px;border-radius:50%;border:2px solid;transform:translate(-50%,-50%);animation:gsh-pulse 1.6s ease-in-out infinite;pointer-events:none}@keyframes gsh-pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.7);opacity:.35}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.transition-section{border-top:1px solid var(--border-color);margin-top:10px;padding-top:4px}.transition-active-indicator{background:#ffb74714;border:1px solid rgba(255,183,71,.3);border-radius:6px;padding:10px 12px;margin:6px 0}.transition-active-row{display:flex;align-items:flex-start;gap:10px}.transition-active-icon{font-size:18px;color:#ffb547;line-height:1.1;flex-shrink:0}.transition-active-info{flex:1;min-width:0}.transition-active-label{font-size:12px;color:var(--text-primary);font-weight:500;line-height:1.4}.transition-active-convergence{font-size:11px;color:#ffb54799;margin-top:3px;line-height:1.3}.transition-list-header{display:flex;align-items:center;justify-content:space-between;padding:6px 0 2px}.transition-list{display:flex;flex-direction:column;gap:3px;margin-bottom:8px}.transition-item{display:flex;align-items:center;gap:6px;background:#ffffff0a;border:1px solid var(--border-color);border-radius:4px;padding:4px 8px;font-size:11px}.transition-item-icon{color:#ffb547;font-size:13px;flex-shrink:0}.transition-item-name{font-weight:500;color:var(--text-primary);flex:1}.transition-item-body{display:flex;align-items:center;gap:5px;flex:1;min-width:0;overflow:hidden}.transition-item-fix{font-size:9px;color:var(--text-tertiary);white-space:nowrap}.transition-item-pts{font-size:10px;color:var(--text-tertiary)}.transition-help{display:flex;align-items:flex-start;gap:6px;background:#ffb7470d;border:1px solid rgba(255,183,71,.15);border-radius:5px;padding:8px 10px;font-size:11px;color:var(--text-muted);line-height:1.4}.transition-help-icon{color:#ffb54780;font-size:14px;flex-shrink:0;line-height:1.2}.transition-help-text{flex:1}.transition-prereq-hint{font-size:11px;color:var(--text-muted);border-left:2px solid rgba(249,115,22,.3);padding:4px 8px;line-height:1.4;border-radius:0 3px 3px 0;background:#f973160a}.toolbar-subpanel{position:absolute;right:calc(100% + 8px);min-width:195px;max-height:calc(100vh - 150px);overflow-y:auto;background:#0f172abf;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:12px 14px 2rem;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;pointer-events:auto;white-space:nowrap}.toolbar-subpanel::-webkit-scrollbar{width:4px}.toolbar-subpanel::-webkit-scrollbar-track{background:#ffffff0a;border-radius:4px}.toolbar-subpanel::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:4px}.toolbar-subpanel::-webkit-scrollbar-thumb:hover{background:#ffffff6b}.toolbar-subpanel.hidden{display:none}.subpanel-title{font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));font-weight:700;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.08)}.subpanel-section-label{font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.panel-check-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:calc(12px * var(--ui-scale));font-family:Inter,sans-serif;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.panel-check-row:hover{color:var(--text-primary)}.toolbar-subpanel input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.25);border-radius:3px;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;transition:all .15s cubic-bezier(.4,0,.2,1);flex-shrink:0}.toolbar-subpanel input[type=checkbox]:hover{border-color:#00d4ff80;box-shadow:0 0 6px #00d4ff4d;transform:scale(1.05)}.toolbar-subpanel input[type=checkbox]:checked{background:#00d4ff26;border-color:#00d4ff;box-shadow:0 0 8px #00d4ff80}.toolbar-subpanel input[type=checkbox]:after{content:"";width:8px;height:4px;border-left:2px solid #00d4ff;border-bottom:2px solid #00d4ff;transform:rotate(-45deg) translate(1px,-1px);opacity:0;transition:opacity .1s ease}.toolbar-subpanel input[type=checkbox]:checked:after{opacity:1}.panel-radio-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:calc(12px * var(--ui-scale));font-family:Inter,sans-serif;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.panel-radio-row:hover{color:var(--text-primary)}.toolbar-subpanel input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.25);border-radius:50%;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;transition:all .15s cubic-bezier(.4,0,.2,1);flex-shrink:0}.toolbar-subpanel input[type=radio]:hover{border-color:#00d4ff80;box-shadow:0 0 6px #00d4ff4d;transform:scale(1.05)}.toolbar-subpanel input[type=radio]:checked{background:#00d4ff26;border-color:#00d4ff;box-shadow:0 0 8px #00d4ff80}.toolbar-subpanel input[type=radio]:after{content:"";width:6px;height:6px;background:#00d4ff;border-radius:50%;opacity:0;transition:opacity .1s ease}.toolbar-subpanel input[type=radio]:checked:after{opacity:1}.subpanel-hint{font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));color:var(--text-muted);margin-top:9px;line-height:1.5;white-space:normal;width:170px}.map-panel-btn.active .map-tool-tooltip{display:none!important}.airspace-tooltip.leaflet-tooltip{background:#070e18eb!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:5px!important;color:var(--text-primary)!important;font-family:Inter,sans-serif!important;font-size:11px!important;padding:5px 9px!important;box-shadow:0 2px 10px #0000008c!important;white-space:nowrap}.airspace-tooltip.leaflet-tooltip:before{display:none!important}.subpanel-collapsible{margin-top:4px}.subpanel-collapsible-header{display:flex;align-items:center;gap:5px;font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:3px 0 5px;border-bottom:1px solid rgba(255,255,255,.08);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.subpanel-collapsible-header::-webkit-details-marker{display:none}.subpanel-collapsible-header:before{content:"▶";font-size:8px;transition:transform .15s;flex-shrink:0}details[open]>.subpanel-collapsible-header:before{transform:rotate(90deg)}.subpanel-collapsible--apt{margin-top:2px}.subpanel-apt-header{font-size:calc(9px * var(--ui-scale));color:var(--text-dim, rgba(255,255,255,.55));padding:2px 0 3px;border-bottom:none;gap:6px}.subpanel-apt-header input[type=checkbox]{flex-shrink:0;cursor:pointer}.subpanel-apt-group-label{margin-top:6px;font-family:Inter,sans-serif;font-size:calc(.68rem * var(--ui-scale));opacity:.55;text-transform:uppercase;letter-spacing:.07em}.subpanel-nested{padding-left:12px;border-left:1px solid rgba(255,255,255,.07);margin-top:2px}.subpanel-section-separator{margin-top:10px}.panel-group-toggle{font-weight:600;color:var(--text-primary);margin-top:4px}.panel-group-toggle:hover{color:#93c5fd}.airspace-popup .leaflet-popup-content-wrapper{background:#070e18fa!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:6px!important;color:var(--text-primary)!important;font-family:Inter,sans-serif!important;font-size:11px!important;padding:0!important;box-shadow:0 2px 12px #000000a6!important}.airspace-popup .leaflet-popup-content{margin:8px 12px!important}.airspace-popup .leaflet-popup-tip-container,.airspace-popup .leaflet-popup-close-button{display:none!important}.leaflet-interactive.tma-outer{cursor:pointer}.leaflet-control-attribution{background:#0006!important;color:var(--text-muted)!important;font-family:Inter,sans-serif!important;font-size:10px!important;border:none!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.leaflet-control-attribution a{color:var(--text-secondary)!important;text-decoration:none}.leaflet-control-attribution a:hover{text-decoration:underline}.ac-marker{display:flex;align-items:center;justify-content:center;transform-origin:center center;transition:transform .4s ease,filter .15s ease;filter:drop-shadow(0 0 3px rgba(0,0,0,.7))}.ac-marker:hover{filter:drop-shadow(0 0 4px rgba(255,255,255,.55)) drop-shadow(0 0 8px rgba(59,158,255,.45));z-index:9999!important}.ac-tooltip.leaflet-tooltip{background:transparent!important;border:none!important;border-radius:0!important;padding:0!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:auto!important;cursor:grab!important;-webkit-user-select:none;user-select:none}.ac-tooltip.leaflet-tooltip:active{cursor:grabbing!important}.ac-tooltip.leaflet-tooltip:before{display:none!important}.ac-tooltip-inner{padding:2px 6px;min-width:unset}.ac-callsign{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;color:var(--text-primary);letter-spacing:.04em;white-space:nowrap;text-shadow:-1px -1px 0 rgba(0,0,0,.9),1px -1px 0 rgba(0,0,0,.9),-1px 1px 0 rgba(0,0,0,.9),1px 1px 0 rgba(0,0,0,.9),0 0 6px rgba(0,0,0,.7)}.ac-detail{font-family:JetBrains Mono,monospace;font-size:calc(9px * var(--ui-scale));color:#c8d2dce6;white-space:nowrap;line-height:1.5;text-shadow:-1px -1px 0 rgba(0,0,0,.9),1px -1px 0 rgba(0,0,0,.9),-1px 1px 0 rgba(0,0,0,.9),1px 1px 0 rgba(0,0,0,.9),0 0 4px rgba(0,0,0,.7)}.ac-route-arrow{color:#96a1b099;padding:0 2px}.ac-type{background:#3b9eff33;border:1px solid rgba(59,158,255,.3);border-radius:2px;padding:0 3px;font-size:8px;color:var(--color-accent);margin-right:3px}.traffic-status-bar{display:flex;align-items:center;gap:calc(6px * var(--ui-scale));padding:calc(8px * var(--ui-scale)) 0 calc(4px * var(--ui-scale));margin-top:calc(4px * var(--ui-scale));border-top:1px solid var(--border)}.traffic-status-text{font-family:JetBrains Mono,monospace;font-size:calc(10px * var(--ui-scale));color:var(--text-muted)}.traffic-dot{width:calc(8px * var(--ui-scale));height:calc(8px * var(--ui-scale));border-radius:50%;flex-shrink:0}.traffic-dot--off{background:var(--text-muted)}.traffic-dot--err{background:#ff4d4d}.traffic-dot--ok{background:#22c55e;animation:traffic-pulse 1.8s ease-in-out infinite}@keyframes traffic-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.traffic-legend{display:flex;flex-direction:column;gap:calc(3px * var(--ui-scale));padding-bottom:calc(4px * var(--ui-scale))}.traffic-legend-row{display:flex;align-items:center;gap:calc(7px * var(--ui-scale));font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));color:var(--text-secondary)}.traffic-legend-dot{width:calc(8px * var(--ui-scale));height:calc(8px * var(--ui-scale));border-radius:50%;flex-shrink:0;border:1px solid rgba(255,255,255,.15)}.notation-marker{background:none!important;border:none!important;box-shadow:none!important;overflow:visible;pointer-events:auto}.notation-wrap{display:inline-block;cursor:grab;padding:2px 4px;-webkit-user-select:none;user-select:none}.notation-wrap:active{cursor:grabbing}.notation-text{display:inline-block;padding:2px 6px;border:1px solid transparent;border-radius:4px;white-space:pre-wrap;word-wrap:break-word;min-width:20px;outline:none;-webkit-user-select:none;user-select:none;cursor:grab;transition:background .2s,border-color .2s;text-shadow:1px -1px 3px rgba(0,0,0,.95),-1px 1px 3px rgba(0,0,0,.95),1px 1px 3px rgba(0,0,0,.95)}.notation-wrap.editing .notation-text{-webkit-user-select:text;user-select:text;cursor:text;background:#ffffff0d;border-color:#ffffff1a}.notation-text:focus{border-bottom:1px dashed rgba(199,125,255,.7)}.notation-text:empty:before{content:"Type note...";color:#ffffff40;font-style:italic;font-weight:400;pointer-events:none}.mv-ctx-item--danger{color:#ff7070!important}.mv-ctx-item--danger:hover{background:#ff3c3c2e!important;color:#ff9090!important}#cursor-coords{position:fixed;z-index:9999;pointer-events:none;display:none;color:#c77dff;font:600 10px JetBrains Mono,monospace;letter-spacing:.03em;text-shadow:0 0 5px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,1);background:#0006;padding:2px 6px;border-radius:3px;white-space:nowrap}.engraving-label{background:none!important;border:none!important;overflow:visible}.engraving-text{font:600 9px JetBrains Mono,monospace;color:#c77dffbf;text-shadow:0 0 4px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,1);white-space:nowrap;pointer-events:none;display:inline-block;padding-left:4px}.shape-list-item{display:flex;align-items:center;gap:5px;padding:5px 2px;border-bottom:1px solid rgba(255,255,255,.06)}.shape-list-item:last-child{border-bottom:none}.shape-list-icon{font-size:11px;color:#c77dff;opacity:.7;flex-shrink:0;width:14px;text-align:center;line-height:1}.shape-list-name{flex:1;font-family:Inter,sans-serif;font-size:12px;color:var(--text-primary);cursor:text;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;outline:none;border-radius:2px;padding:1px 3px;min-width:0}.shape-list-name:focus{background:#c77dff1f;color:#c77dff;text-overflow:clip}.shape-list-actions{display:flex;gap:2px;flex-shrink:0}.shape-action-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:2px 4px;font-size:11px;border-radius:3px;line-height:1;transition:color .12s,background .12s}.shape-action-btn:hover{background:#ffffff14;color:var(--text-primary)}.shape-action-btn.action-hidden{opacity:.35}.shape-action-btn.action-delete:hover{color:#f87171;background:#f871711f}.shapes-empty-msg,.panel-empty-msg{font-family:Inter,sans-serif;font-size:calc(11px * var(--ui-scale));color:var(--text-muted);text-align:center;padding:20px 8px;line-height:1.6;font-style:italic;opacity:.7}.panel-list-item{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid rgba(255,255,255,.05);transition:background .1s}.panel-list-item:hover{background:#ffffff08}.panel-list-item:last-child{border-bottom:none}.panel-list-item-info{flex:1;min-width:0;display:flex;flex-direction:column}.panel-list-item-name{font-family:Inter,sans-serif;font-size:calc(12px * var(--ui-scale));font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-list-item-meta{font-family:JetBrains Mono,monospace;font-size:calc(9.5px * var(--ui-scale));color:var(--text-muted);letter-spacing:.02em;margin-top:1px}.panel-list-item-actions{display:flex;gap:4px;flex-shrink:0}.panel-action-btn{background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:2px 6px;line-height:1;border-radius:4px;transition:all .1s;display:flex;align-items:center;justify-content:center}.panel-action-btn:hover{background:#ffffff14;color:var(--text-primary)}.panel-action-btn.delete-btn:hover{color:#f87171;background:#f871711f}.draw-new-btn{display:block;width:100%;padding:6px 8px;margin-bottom:8px;background:#c77dff1a;border:1px solid rgba(199,125,255,.35);border-radius:4px;color:#c77dff;font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));font-weight:700;cursor:pointer;text-align:left;letter-spacing:.02em;transition:all .15s cubic-bezier(.4,0,.2,1)}.draw-new-btn:hover{background:#c77dff33;border-color:#c77dffa6;color:#d89fff;box-shadow:0 0 10px #c77dff40;transform:translateY(-1px)}.draw-new-btn.active{background:#00d4ff1f;border-color:#00d4ff;color:#00d4ff;box-shadow:0 0 10px #00d4ff59}.geo-marker-icon{background:none!important;border:none!important;overflow:visible}.geo-marker-wrap{display:flex;flex-direction:column;align-items:center;width:0;overflow:visible;pointer-events:all}.geo-marker-cross{flex-shrink:0;filter:drop-shadow(0 0 3px rgba(0,212,255,.75))}.geo-marker-label{font:600 9.5px JetBrains Mono,monospace;color:#00d4ff;text-shadow:0 0 4px rgba(0,0,0,.95),0 0 2px rgba(0,0,0,1);white-space:nowrap;margin-top:3px;pointer-events:none}.range-inputs{display:flex;gap:8px;margin-bottom:8px}.range-input-group{flex:1;display:flex;flex-direction:column;gap:3px}.range-input-group label{font-size:calc(9.5px * var(--ui-scale));font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.range-input-group input[type=number]{width:100%;padding:4px 6px;background:#ffffff0d;border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:calc(11.5px * var(--ui-scale));outline:none;transition:border-color .15s}.range-place-here-btn{width:100%;margin-top:5px;padding:5px 0;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:4px;color:var(--text-secondary);font-family:Inter,sans-serif;font-size:calc(11px * var(--ui-scale));cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}.range-place-here-btn:hover{background:#ffffff1f;border-color:#00d4ff80;color:var(--text-primary);box-shadow:0 0 10px #00d4ff40;transform:translateY(-1px)}.range-label-icon{background:transparent!important;border:none!important;pointer-events:none;overflow:visible}.range-label{font-family:JetBrains Mono,monospace;font-size:9px;color:#ffffff8c;text-shadow:0 0 3px #000}#map.cursor-draw .leaflet-container{cursor:crosshair!important}#map.cursor-text .leaflet-container{cursor:text!important}#map.cursor-crosshair .leaflet-container{cursor:crosshair!important}#map.cursor-range .leaflet-container{cursor:cell!important}.notation-wrap{position:relative;display:inline-block}.notation-floating-bar{position:absolute;bottom:calc(100% + 12px);left:0;display:none;flex-direction:row;align-items:center;gap:12px;padding:6px 10px;background:#0f172af2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:8px;box-shadow:0 8px 32px #00000080;z-index:1000;white-space:nowrap;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}.notation-wrap.editing .notation-floating-bar{display:flex;opacity:1;transform:translateY(0)}.notation-floating-bar:after{content:"";position:absolute;top:100%;left:12px;border-width:6px;border-style:solid;border-color:rgba(15,23,42,.95) transparent transparent transparent}.style-group{display:flex;gap:5px;align-items:center}.style-group-label{font-size:9px;font-weight:700;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;margin-right:2px}.size-btn{width:24px;height:19px;background:#ffffffb3;border:1px solid rgba(255,255,255,.2);border-radius:4px;color:#000!important;font-size:9px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.size-btn.active{background:#00d4ff!important;border-color:#00d4ff!important;color:#fff!important}.color-swatch{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s ease}.color-swatch.active{border-color:#fff;box-shadow:0 0 6px #fff6}.style-bar-divider{width:1px;height:16px;background:#ffffff26}#cursor-coords{transition:opacity .2s ease,transform .1s ease}#cursor-coords.ui-collision{opacity:0}.notation-marker{background:transparent!important;border:none!important;overflow:visible!important}.map-tool-btn.active .map-tool-tooltip{opacity:0!important;pointer-events:none!important}.map-tool-btn.active .map-tool-tooltip{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.research-tabs{display:flex;gap:4px;margin-bottom:10px}.research-tab-btn{flex:1;padding:4px 0;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:var(--text-secondary);font-family:Inter,sans-serif;font-size:calc(10px * var(--ui-scale));font-weight:600;letter-spacing:.04em;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);white-space:nowrap}.research-tab-btn:hover{background:#ffffff1f;color:var(--text-primary);box-shadow:0 0 6px #ffffff14;transform:translateY(-.5px)}.research-tab-btn.active{background:#00d4ff2e;border-color:#00d4ff73;color:#00d4ff;box-shadow:0 0 8px #00d4ff40}.research-search-row{display:flex;gap:6px;margin-bottom:10px;align-items:center}.research-input{flex:1;min-width:0;padding:calc(6px * var(--ui-scale)) calc(8px * var(--ui-scale));background:#ffffff12;border:1px solid rgba(255,255,255,.15);border-radius:5px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:calc(12px * var(--ui-scale));outline:none;transition:border-color .15s ease}.research-input:focus{border-color:#00d4ff80}.research-input::placeholder{color:var(--text-muted);font-size:calc(11px * var(--ui-scale))}.research-search-btn{flex-shrink:0;width:calc(30px * var(--ui-scale));height:calc(30px * var(--ui-scale));display:flex;align-items:center;justify-content:center;background:#00d4ff26;border:1px solid rgba(0,212,255,.35);border-radius:5px;color:#00d4ff;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}.research-search-btn:hover{background:#00d4ff47;border-color:#00d4ff99;box-shadow:0 0 10px #00d4ff73;transform:translateY(-.5px)}.research-result-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.09);border-radius:6px;padding:calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale));min-height:calc(54px * var(--ui-scale));white-space:normal;font-size:calc(12px * var(--ui-scale));line-height:1.6;color:var(--text-secondary)}.research-result-empty{font-family:Inter,sans-serif;font-size:calc(11px * var(--ui-scale));color:var(--text-muted);font-style:italic;text-align:center;padding:calc(6px * var(--ui-scale)) 0}.research-result-not-found{font-family:Inter,sans-serif;font-size:calc(11px * var(--ui-scale));color:#f87171;text-align:center;padding:calc(6px * var(--ui-scale)) 0}.research-result-row{display:flex;gap:calc(6px * var(--ui-scale));padding:calc(2px * var(--ui-scale)) 0}.research-result-label{font-family:JetBrains Mono,monospace;font-size:calc(10px * var(--ui-scale));font-weight:700;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;min-width:calc(62px * var(--ui-scale));padding-top:1px}.research-result-value{color:var(--text-primary);font-size:calc(12px * var(--ui-scale));word-break:break-word}.settings-slider-row{margin-bottom:14px}.settings-slider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.settings-slider-name{font-family:Inter,sans-serif;font-size:calc(11px * var(--ui-scale));font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.settings-slider-val{font-family:JetBrains Mono,monospace;font-size:calc(11px * var(--ui-scale));font-weight:700;color:#00d4ff;min-width:28px;text-align:right}.settings-slider{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:4px;background:#ffffff26;border-radius:2px;outline:none;margin:8px 0;cursor:pointer}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#00d4ff;box-shadow:0 0 6px #00d4ffb3;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}.settings-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 10px #00d4ffe6}.settings-slider::-moz-range-thumb{width:12px;height:12px;border:none;border-radius:50%;background:#00d4ff;box-shadow:0 0 6px #00d4ffb3;cursor:pointer;transition:transform .1s ease,box-shadow .1s ease}.settings-slider::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 0 10px #00d4ffe6}.settings-slider::-moz-range-track{background:transparent;border:none}.settings-slider-ticks{display:flex;justify-content:space-between;margin-top:3px;font-size:9px;color:var(--text-muted);font-family:JetBrains Mono,monospace}.basemap-section{flex-direction:column;gap:8px;align-items:stretch}.basemap-picker{display:flex;gap:4px;width:100%}.basemap-card{flex:1;padding:6px 0;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:calc(9.5px * var(--ui-scale, 1));font-weight:600;letter-spacing:.04em;cursor:pointer;transition:all .15s ease;white-space:nowrap;display:flex;flex-direction:column;align-items:center;justify-content:center}.basemap-card:hover{background:#ffffff1f;color:var(--text-primary);border-color:#ffffff26}.basemap-card.active{background:#00d4ff2e;border-color:#00d4ff73!important;color:#00d4ff!important;box-shadow:0 0 6px #00d4ff33}.navaid-popup .leaflet-popup-content-wrapper{background:#0a0e16f5;border:1px solid rgba(255,255,255,.12);border-radius:6px;box-shadow:0 4px 16px #000000b3;color:var(--text-primary)}.navaid-popup .leaflet-popup-tip{background:#0a0e16f5}.navaid-popup .leaflet-popup-close-button{color:var(--text-muted)}@media (max-height: 700px){.toolbar-subpanel{padding-top:8px}.subpanel-title{font-size:9px;margin-bottom:6px;padding-bottom:5px}.panel-check-row{padding:2px 0}.viewer-group-header{padding:3px 8px}.view-section-header{padding-top:6px}.sidebar-content{padding-bottom:3rem}}.airport-wx-popup .leaflet-popup-content-wrapper{background:#0a0e16f7;border:1px solid rgba(255,255,255,.1);border-radius:10px;box-shadow:0 8px 32px #000000b3,0 1px #ffffff0f inset;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);padding:0;min-width:260px;max-width:340px}.airport-wx-popup .leaflet-popup-content{margin:0;width:100%!important}.airport-wx-popup .leaflet-popup-tip{background:#0a0e16f7}.airport-wx-popup .leaflet-popup-close-button{color:var(--text-muted);font-size:18px;top:6px;right:8px}.wx-popup-header{display:flex;align-items:baseline;gap:8px;padding:12px 14px 6px;border-bottom:1px solid rgba(255,255,255,.07)}.wx-icao{font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:.04em}.wx-airport-name{font-size:11px;color:var(--text-muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wx-popup-runways{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;color:#ffb547;padding:2px 14px 8px;letter-spacing:.02em}.wx-body{padding:8px 14px 12px}.wx-show-btn{display:block;width:100%;padding:8px 12px;background:#3b9eff1a;border:1px solid rgba(59,158,255,.3);border-radius:6px;color:var(--color-sid);font-size:12px;font-family:Inter,sans-serif;font-weight:500;cursor:pointer;text-align:center;transition:background .15s,border-color .15s}.wx-show-btn:hover{background:#3b9eff2e;border-color:#3b9eff8c}.wx-loading{display:flex;align-items:center;gap:10px;padding:10px 4px;font-size:12px;color:var(--text-muted)}.wx-spinner{width:18px;height:18px;border:2px solid rgba(59,158,255,.15);border-top:2px solid var(--color-sid);border-radius:50%;flex-shrink:0;animation:wx-spin .8s linear infinite}@keyframes wx-spin{to{transform:rotate(360deg)}}.wx-error{padding:10px 4px;font-size:12px;color:var(--color-danger)}.wx-flight-cat{display:inline-block;padding:2px 8px;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.wx-cat--VFR{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.4)}.wx-cat--MVFR{background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.wx-cat--IFR{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.4)}.wx-cat--LIFR{background:#a855f733;color:#c084fc;border:1px solid rgba(168,85,247,.4)}.wx-cat--UNK{background:#64748b33;color:#94a3b8;border:1px solid rgba(100,116,139,.4)}.wx-card{font-size:12px}.wx-section-title{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.wx-header-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.wx-obs-short{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:9px;color:var(--text-muted)}.wx-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:6px}.wx-item--wind,.wx-item--qnh,.wx-item--temp{grid-column:span 2}.wx-item--clouds,.wx-item--vis{grid-column:span 3}.wx-item{display:flex;flex-direction:column;gap:2px;padding:4px 6px;background:#ffffff0a;border-radius:5px;border:1px solid rgba(255,255,255,.06)}.wx-item-hdr{display:flex;align-items:center;gap:4px}.wx-icon{font-size:11px;line-height:1;flex-shrink:0}.wx-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-family:JetBrains Mono,monospace}.wx-value{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-value--metar-fallback{color:#facc15}.wx-value--taf-fallback{color:#f97316}.wx-value--na{color:var(--text-muted);font-style:italic}.wx-raw-metar{font-family:JetBrains Mono,monospace;font-size:9px;color:var(--text-muted);padding:6px 0 2px;word-break:break-all;line-height:1.5;border-top:1px solid rgba(255,255,255,.05);margin-top:4px}.wx-divider{border:none;border-top:1px solid rgba(255,255,255,.07);margin:8px 0}.wx-metar-raw{font-family:JetBrains Mono,monospace;font-size:9px;color:#facc15;word-break:break-all;line-height:1.5;margin-top:6px;padding:6px 8px;background:#ffffff08;border-radius:4px;border:1px solid rgba(255,255,255,.05)}.wx-taf-raw{font-family:JetBrains Mono,monospace;font-size:9px;color:#f97316;word-break:break-all;line-height:1.5;margin-top:6px;padding:6px 8px;background:#ffffff08;border-radius:4px;border:1px solid rgba(255,255,255,.05)}.wx-taf-valid{font-size:10px;color:var(--text-muted);margin-top:4px}.wx-taf-na{font-size:11px;color:var(--text-muted);font-style:italic;margin-top:4px}.wx-observed{font-size:10px;color:var(--text-muted);margin-top:8px;font-family:JetBrains Mono,monospace}.lang-toggle{display:flex;background:#0f172a99;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:2px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 1px 2px #0003}.lang-btn{background:transparent;border:none;color:var(--text-muted);font-size:10px;font-family:JetBrains Mono,monospace;font-weight:700;padding:3px 6px;border-radius:9px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:.05em}.lang-btn:hover:not(.active){color:var(--text-primary);background:#ffffff0d}.lang-btn.active{background:var(--color-sid);color:#fff;box-shadow:0 0 8px #3b9eff4d;text-shadow:0 0 2px rgba(255,255,255,.5)}.ds-header-title-group{display:flex;align-items:center;gap:10px}.ds-modal-header{justify-content:space-between}.ds-footer-left,.ds-footer-right{display:flex;align-items:center}.ds-footer-right{gap:16px}.vfr-waypoint-rea,.vfr-waypoint-reh{pointer-events:none}.vfr-triangle{position:absolute;top:50%;left:50%;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid #ff00ff;margin-left:-6px;margin-top:-5px;filter:drop-shadow(0 0 3px rgba(255,0,255,.8))}.vfr-circle{position:absolute;top:50%;left:50%;width:10px;height:10px;background:#ff0;border:1.5px solid #000;border-radius:50%;margin-left:-5px;margin-top:-5px;box-shadow:0 0 5px #ff0c}.vfr-label{position:absolute;top:8px;left:50%;transform:translate(-50%);font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;color:#fff;text-shadow:0 0 3px #000,0 0 5px #000;white-space:nowrap}.vfr-popup{min-width:200px;font-family:Inter,sans-serif;padding:2px}.vfr-popup-title{font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;color:var(--color-sid);margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4px;letter-spacing:.02em}.vfr-popup-segment{font-size:10px;color:var(--text-secondary);margin-bottom:10px;font-weight:600;opacity:.9}.vfr-popup-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:6px;background:#00000040;padding:8px;border-radius:4px;border:1px solid rgba(255,255,255,.05)}.vfr-grid-header{font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.vfr-grid-cell{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-primary)}.vfr-segment-popup .leaflet-popup-content-wrapper{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-bright);border-radius:6px;box-shadow:var(--shadow-lg)}.vfr-segment-popup .leaflet-popup-tip{background:var(--bg-secondary);border:1px solid var(--border-bright)}.vfr-dot{width:8px;height:8px;border-radius:50%;margin:0 8px;flex-shrink:0}.vfr-dot-rea{background:#0ff;box-shadow:0 0 4px #0ff9}.vfr-dot-reh{background:#ff8c00;box-shadow:0 0 4px #ff8c0099}.drop-point-dot.manual-dot{width:14px;height:14px;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;background:transparent;border:1.5px solid var(--text-muted);color:var(--text-muted);font-weight:700;margin-top:0}.manual-pt-modal-box{max-width:320px;width:100%}.manual-pt-fields{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.manual-pt-row{display:flex;flex-direction:column;gap:4px}.manual-pt-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.manual-pt-input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:5px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:13px;padding:7px 10px;width:100%;transition:border-color .15s}.manual-pt-input:focus{outline:none;border-color:var(--accent-primary)}.manual-pt-error{font-size:11px;color:#f87171;padding:4px 0}.inline-restriction-panel{padding:0 12px 12px}.inline-panel-idle{display:flex;flex-direction:column;gap:6px;padding:8px 0}.inline-panel-active{display:flex;flex-direction:column;gap:8px}.inline-fix-header{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;padding:6px 0 4px;border-bottom:1px solid var(--border);margin-bottom:2px}.inline-restr-rows{display:flex;flex-direction:column;gap:6px}.inline-restr-row{display:grid;grid-template-columns:28px 1fr 1fr 1fr;align-items:center;gap:4px}.inline-restr-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);text-align:right}.inline-restr-req{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:11px;padding:4px 5px;width:100%}.inline-restr-val{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:11px;padding:4px 5px;width:100%}.inline-restr-unit{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-size:11px;padding:4px 5px;width:100%}.inline-restr-req:focus,.inline-restr-val:focus,.inline-restr-unit:focus{outline:none;border-color:var(--accent-primary)}.inline-hold-toggle-row{display:flex;align-items:center;gap:8px;padding:4px 0}.toggle-switch{position:relative;display:inline-block;width:32px;height:18px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:18px;transition:background .2s}.toggle-slider:before{content:"";position:absolute;height:12px;width:12px;left:2px;bottom:2px;background:var(--text-muted);border-radius:50%;transition:transform .2s,background .2s}.toggle-switch input:checked+.toggle-slider{background:var(--accent-primary);border-color:var(--accent-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(14px);background:#fff}.toggle-switch:focus-within .toggle-slider{outline:2px solid var(--accent-primary);outline-offset:2px}.inline-hold-label-text{font-size:11px;color:var(--text-muted)}.inline-hold-toggle-row.inline-hold-toggle-active{border-left:2px solid rgba(255,181,71,.75);background:#ffb5470f;padding-left:6px;margin-left:-6px;border-radius:3px}.inline-hold-fields{display:flex;flex-direction:column;gap:5px;padding:4px 0 0;border-top:1px solid var(--border)}.inline-hold-field-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:4px}.inline-hold-toggle-label{font-size:11px;color:var(--text-secondary);flex:1}.inline-hold-input{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:11px;padding:4px 6px;width:100%}.inline-hold-input:focus{outline:none;border-color:var(--accent-primary)}.inline-hold-suffix{font-size:10px;color:var(--text-muted);white-space:nowrap}.inline-turn-dir{display:flex;gap:4px;align-items:center}.inline-turn-btn{flex:1;padding:3px 0;font-size:10px;font-weight:600;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);cursor:pointer;text-align:center;transition:background .15s,color .15s,border-color .15s}.inline-turn-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.inline-action-row{display:flex;gap:6px;padding-top:4px}.inline-action-btn{flex:1;padding:6px 4px;font-size:11px;font-weight:600;border-radius:5px;cursor:pointer;border:none;transition:background .15s,opacity .15s}.inline-action-btn.primary{background:var(--accent-primary);color:#fff}.inline-action-btn.primary:hover{opacity:.88}.inline-action-btn.secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border)}.inline-action-btn.secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.inline-action-btn.save{background:#1a6b3a;color:#7ef5a8;border:1px solid #2a9b5a}.inline-action-btn.save:hover{background:#1f8044}.pending-action-row{display:flex;gap:6px}.pending-action-row .inline-action-btn{font-size:10px;padding:5px 4px}.holding-hover-tip.leaflet-tooltip{background:#0a0804cc!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border:1px solid rgba(255,181,71,.35)!important;border-radius:6px!important;box-shadow:0 4px 20px #0009,0 0 10px #ffb54726!important;padding:6px 12px!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:2px!important;pointer-events:none!important;white-space:nowrap!important;min-width:60px!important}.holding-hover-tip.leaflet-tooltip:before{display:none!important}.hht-bearing{font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;color:#ffb547;display:block;text-align:center;letter-spacing:.05em;text-shadow:0 0 8px rgba(255,181,71,.5);line-height:1.2}.hht-side{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;color:#ffb547a6;display:block;text-align:center;letter-spacing:.08em;line-height:1.2}.area-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:12000;background:#080c13c7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:center;transition:opacity .3s ease}.area-hidden{display:none!important}.area-modal-box{background:#0d1420d1;border:1px solid rgba(56,189,248,.22);border-radius:12px;box-shadow:0 20px 50px #000000a6,0 0 35px #38bdf80a;width:90%;max-width:800px;padding:30px;position:relative;font-family:Inter,sans-serif;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);animation:area-modal-fadein .45s cubic-bezier(.16,1,.3,1) forwards}@keyframes area-modal-fadein{0%{transform:scale(.97) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.area-close-btn{position:absolute;top:15px;right:20px;background:transparent;border:none;color:#fff6;font-size:26px;cursor:pointer;line-height:1;transition:color .15s ease}.area-close-btn:hover{color:#fff}.area-modal-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:18px;margin-bottom:24px}.area-title-group{flex:1;padding-right:15px}.area-modal-title{font-family:Inter,sans-serif;font-size:21px;font-weight:700;color:#fff;margin:0 0 6px;letter-spacing:-.01em}.area-modal-subtitle{font-family:Inter,sans-serif;font-size:13px;color:#fff9;margin:0}.area-cards-container{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:24px}.area-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:24px;cursor:pointer;position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%;outline:none;-webkit-user-select:none;user-select:none;transition:all .25s cubic-bezier(.16,1,.3,1)}.area-card:hover{background:#ffffff0a;border-color:#38bdf866;transform:translateY(-4px);box-shadow:0 12px 24px #0006,0 0 15px #38bdf814}.area-card:focus-visible{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf833}.area-card.selected{background:#38bdf80d;border-color:#38bdf8;box-shadow:0 8px 20px #00000073,0 0 20px #38bdf81f}.card-glow-layer{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(56,189,248,.1) 0%,transparent 60%);pointer-events:none;opacity:0;transition:opacity .25s ease}.area-card:hover .card-glow-layer,.area-card.selected .card-glow-layer{opacity:1}.area-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.area-card-header h3{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#fff;margin:0}.area-badge{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.04em}.badge-sp{background:#c084fc26;border:1px solid rgba(192,132,252,.3);color:#c084fc}.badge-sy{background:#34d39926;border:1px solid rgba(52,211,153,.3);color:#34d399}.area-card-desc{font-family:Inter,sans-serif;font-size:12.5px;color:#ffffff8c;line-height:1.6;margin:0 0 20px;flex:1}.compass-container{display:flex;align-items:center;gap:15px;margin-top:auto;border-top:1px solid rgba(255,255,255,.05);padding-top:16px}.compass-mini{background:#00000040;border-radius:50%;overflow:visible}.compass-dial{fill:#080c1366;stroke:#ffffff1a;stroke-width:1.5}.compass-axis{stroke:#ffffff0d;stroke-width:.8}.compass-tick{stroke:#fff3;stroke-width:1.2}.compass-tick.tick-n{stroke:#38bdf8;stroke-width:1.8}.compass-pivot{fill:#fff;stroke:#0006;stroke-width:1}.needle-txt-true{font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;fill:#38bdf8;text-anchor:middle;pointer-events:none}.needle-txt-mag{font-family:JetBrains Mono,monospace;font-size:8px;font-weight:700;fill:#fb923c;text-anchor:middle;pointer-events:none}.compass-label{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:#fff6}.compass-needle-true{transform-origin:50px 50px}.compass-needle-magnetic{transform-origin:50px 50px;transition:transform .4s cubic-bezier(.25,.8,.25,1)}.sp-card .compass-needle-magnetic{transform:rotate(-22deg)}.sy-card .compass-needle-magnetic{transform:rotate(13deg)}.sp-card:hover .compass-needle-magnetic{animation:compass-settle-sp 1.8s cubic-bezier(.25,.8,.25,1) forwards}.sy-card:hover .compass-needle-magnetic{animation:compass-settle-sy 1.8s cubic-bezier(.25,.8,.25,1) forwards}@keyframes compass-settle-sp{0%{transform:rotate(0)}15%{transform:rotate(-42deg)}35%{transform:rotate(-10deg)}55%{transform:rotate(-28deg)}72%{transform:rotate(-18deg)}85%{transform:rotate(-24deg)}to{transform:rotate(-22deg)}}@keyframes compass-settle-sy{0%{transform:rotate(0)}15%{transform:rotate(25deg)}35%{transform:rotate(5deg)}55%{transform:rotate(17deg)}72%{transform:rotate(11deg)}85%{transform:rotate(14deg)}to{transform:rotate(13deg)}}.area-modal-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.06);padding-top:20px;margin-top:8px}.area-remember-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#fff9;cursor:pointer}.area-remember-label input[type=checkbox]{cursor:pointer;accent-color:#38bdf8;margin:0}.area-launch-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#ffffff40;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:10px 24px;cursor:not-allowed;letter-spacing:.02em;text-transform:uppercase;transition:all .25s ease}.area-launch-btn.ready{background:#38bdf8;border-color:#38bdf8;color:#080c13;cursor:pointer;box-shadow:0 4px 14px #38bdf840}.area-launch-btn.ready:hover{background:#0ea5e9;border-color:#0ea5e9;transform:translateY(-1px);box-shadow:0 6px 18px #38bdf859}.area-launch-btn.ready:active{transform:translateY(0)}.sidebar-header span[data-i18n="sidebar.title"]{transition:all .2s ease}.sidebar-header span[data-i18n="sidebar.title"]:hover{color:#38bdf8!important;text-shadow:0 0 8px rgba(56,189,248,.5)}.cloud-sync-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:20px;font-family:JetBrains Mono,monospace;font-size:9px;font-weight:500;letter-spacing:.02em;color:var(--text-muted);-webkit-user-select:none;user-select:none;cursor:default;transition:all .3s cubic-bezier(.4,0,.2,1)}.cloud-sync-badge .sync-dot{width:6px;height:6px;border-radius:50%;background:#94a3b8;transition:all .3s ease;box-shadow:0 0 4px #94a3b866}.cloud-sync-badge .sync-text{font-size:8px;text-transform:uppercase;color:#fff9}.cloud-sync-badge.idle{background:#ffffff05;border-color:#ffffff0d}.cloud-sync-badge.idle .sync-dot{background:#94a3b8;box-shadow:0 0 4px #94a3b84d}.cloud-sync-badge.syncing{background:#38bdf80d;border-color:#38bdf833;box-shadow:0 0 10px #38bdf80d}.cloud-sync-badge.syncing .sync-dot{background:#38bdf8;box-shadow:0 0 8px #38bdf8;animation:syncPulse 1.2s infinite ease-in-out}.cloud-sync-badge.syncing .sync-text{color:#38bdf8}.cloud-sync-badge.success{background:#22c55e0a;border-color:#22c55e33}.cloud-sync-badge.success .sync-dot{background:#22c55e;box-shadow:0 0 8px #22c55e}.cloud-sync-badge.success .sync-text{color:#22c55e}.cloud-sync-badge.error{background:#ef44440a;border-color:#ef444440}.cloud-sync-badge.error .sync-dot{background:#ef4444;box-shadow:0 0 8px #ef4444}.cloud-sync-badge.error .sync-text{color:#ef4444}@keyframes syncPulse{0%,to{transform:scale(1);opacity:1;box-shadow:0 0 4px #38bdf8}50%{transform:scale(1.3);opacity:.6;box-shadow:0 0 10px #38bdf8}}.proc-folder{margin-bottom:12px;border-radius:8px;background:#1e293b33;border:1px solid rgba(255,255,255,.05);overflow:hidden;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:border-color .2s ease,box-shadow .2s ease}.proc-folder:hover{border-color:#ffffff1a}.proc-folder-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#0f172a66;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.proc-folder-header:hover{background:#0f172a99}.proc-folder-title-group{display:flex;align-items:center;gap:8px;font-size:11.5px;font-weight:600;color:var(--text-secondary, #e2e8f0);letter-spacing:.02em;text-transform:uppercase}.proc-folder-icon{font-size:14px;color:#3b9eff;text-shadow:0 0 4px rgba(59,158,255,.3)}.proc-folder-chevron{font-size:10px;color:var(--text-muted, #94a3b8);transition:transform .2s cubic-bezier(.4,0,.2,1)}.proc-folder.collapsed .proc-folder-chevron{transform:rotate(-90deg)}.proc-folder-body{padding:8px;display:flex;flex-direction:column;gap:6px;background:transparent;transition:max-height .3s ease}.predefined-lock-badge{display:inline-flex;align-items:center;justify-content:center;font-size:10px;padding:2px 5px;border-radius:4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;margin-left:6px;font-family:var(--font-mono, monospace)}.predefined-lock-badge:before{content:"🔒";margin-right:3px;font-size:9px}.panel-action-btn.action-hidden{opacity:.35}.leaflet-grab{cursor:crosshair!important}.leaflet-dragging,.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-interactive{cursor:grabbing!important}
