.integrated-config-panel,.integrated-config-pane{position:fixed;top:0;right:0;bottom:0;width:480px;background:#111827;box-shadow:-4px 0 12px #00000080;display:flex;flex-direction:column;z-index:1000;overflow:hidden;border-left:1px solid #1f2937;height:100dvh;max-height:100dvh;box-sizing:border-box}.config-header{display:flex;align-items:center;justify-content:space-between;padding:.25rem .75rem;border-bottom:1px solid #334155;background:#0f172acc;flex:0 0 auto;min-height:40px;max-height:50px}.config-header h3{margin:0;color:#fff;font-size:.875rem;font-weight:600}.close-button{background:#4755694d;border:1px solid #475569;color:#cbd5e1;padding:.25rem;border-radius:4px;cursor:pointer;font-size:.875rem;line-height:1;transition:all .2s}.close-button:hover{background:#47556980;color:#fff}.shared-config-notice{flex:0 0 auto;display:flex;gap:.375rem;padding:.375rem .75rem;background:linear-gradient(135deg,#f59e0b2e,#f59e0b1a);border-top:1px solid rgba(245,158,11,.35);border-left:4px solid #f59e0b;color:#fef3c7;font-size:.625rem;align-items:flex-start;line-height:1.25;min-height:28px;max-height:40px}.notice-icon{font-size:.875rem;flex-shrink:0;margin-top:.05rem}.notice-content{flex:1;line-height:1.5}.notice-content strong{color:#fbbf24;font-weight:600}.integrated-config-panel .main-tabs{display:flex;border-bottom:1px solid #334155;background:#181f2999;padding:0;flex:0 0 auto}.integrated-config-panel .tab-button{padding:.5rem 1rem;margin-right:0;flex:1;background:none;border:none;color:#94a3b8;cursor:pointer;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;transition:all .2s;position:relative}.integrated-config-panel .tab-button:hover{color:#e2e8f0;background:#3b82f60d}.integrated-config-panel .tab-button.active{color:#fff;border-bottom-color:#3b82f6;background:#3b82f61a}.config-tabs.sub-tabs{display:flex;padding:0;background:#0f172a66;border-bottom:1px solid #233040;margin-bottom:0;position:sticky;top:0;z-index:4;flex:0 0 auto}.sub-tabs-container{display:flex;width:100%;align-items:center;justify-content:space-between;padding:.5rem .75rem}.sub-tabs-buttons{display:flex;gap:.25rem}.config-tabs.sub-tabs .tab-button{flex:0 0 auto;font-size:.75rem;padding:.375rem .75rem;text-align:center;background:#1e293b4d;border:1px solid #334155;border-radius:4px;color:#cbd5e1;border-bottom:1px solid #334155;transition:all .2s}.config-tabs.sub-tabs .tab-button:hover{background:#1e293b80;color:#e2e8f0}.config-tabs.sub-tabs .tab-button.active{background:#3b82f6;color:#fff;border-color:#3b82f6;border-bottom-color:#3b82f6}.add-equipment-btn{background:#059669;border:none;color:#fff;padding:.375rem .75rem;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s;white-space:nowrap}.add-equipment-btn:hover{background:#047857}.add-equipment-btn:disabled{opacity:.6;cursor:not-allowed;background:#6b7280}.config-content{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;overflow:hidden}.panel-guidance{flex:0 0 auto;min-height:80px;max-height:120px;background:#0f172a66;border-bottom:1px solid #334155;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.panel-guidance h4{margin:0;font-size:.75rem;font-weight:600;color:#e2e8f0;text-transform:uppercase;letter-spacing:.025em}.panel-guidance-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.panel-guidance-left{display:flex;align-items:center;gap:.75rem;flex:1}.panel-guidance-right{display:flex;align-items:center;gap:.5rem}.equipment-type-tabs{display:flex;gap:.25rem}.equipment-type-tab{padding:.375rem .75rem;background:#1e293b4d;border:1px solid #334155;border-radius:4px;color:#cbd5e1;font-size:.75rem;cursor:pointer;transition:all .2s}.equipment-type-tab:hover{background:#1e293b80;color:#e2e8f0}.equipment-type-tab.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.equipment-filter{background:#1e293b4d;border:1px solid #334155;border-radius:4px;color:#e2e8f0;padding:.375rem .75rem;font-size:.75rem;min-width:120px}.equipment-filter::placeholder{color:#64748b}.panel-content{flex:1 1 auto;min-height:0;overflow-y:auto;padding:.75rem;scroll-behavior:smooth}.equipment-section,.vegetation-section{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;padding:0}.equipment-rows-container{display:flex;flex-direction:column;gap:.25rem}.equipment-row{display:grid;grid-template-columns:1fr auto auto 1fr 1fr auto;gap:.5rem;align-items:center;padding:.5rem;background:#1e293b4d;border:1px solid #334155;border-radius:4px;min-height:48px;transition:all .2s}@media (max-width: 768px){.integrated-config-panel{width:100%;left:0;right:0}.panel-guidance{min-height:60px;max-height:80px;padding:.5rem}.panel-guidance h4{font-size:.7rem}.panel-guidance-content{flex-direction:column;gap:.5rem;align-items:stretch}.equipment-type-tabs{justify-content:space-between;width:100%}.equipment-type-tab{flex:1;text-align:center;font-size:.65rem;padding:.25rem .5rem}.equipment-filter{min-width:auto;flex:1}.equipment-config-panel.compact .equip-list{gap:.375rem}.equipment-config-panel.compact .equip-row{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;min-height:0}.equipment-card-header{display:flex;justify-content:space-between;align-items:center}.equipment-card-stats{display:flex;gap:1rem;font-size:.75rem;color:#94a3b8}.equipment-card-tags{display:flex;flex-direction:column;gap:.25rem}.equipment-card-tag-group{display:flex;gap:.25rem;flex-wrap:wrap}.equipment-config-panel.compact .eq-actions{justify-content:flex-end}}@media (max-width: 480px){.panel-guidance{min-height:80px;max-height:100px}.equipment-type-tabs{flex-direction:column;gap:.25rem}.equipment-type-tab{font-size:.6rem;padding:.125rem .25rem}}.equipment-config-panel.compact .equip-list{display:flex;flex-direction:column;gap:.125rem}.equipment-config-panel.compact .equip-row{display:grid;grid-template-columns:1.5fr auto auto 1fr 1fr auto;gap:.375rem;align-items:center;padding:.375rem .5rem;background:#1e293b4d;border:1px solid #334155;border-radius:3px;min-height:36px;font-size:.75rem;transition:all .2s}.equipment-config-panel.compact .equip-row:hover{background:#1e293b80;border-color:#475569}.equipment-config-panel.compact .eq-name{font-weight:600;color:#e2e8f0;font-size:.8rem}.equipment-config-panel.compact .eq-small{font-size:.7rem;color:#94a3b8}.equipment-config-panel.compact .eq-tags{display:flex;gap:.125rem;flex-wrap:wrap}.equipment-config-panel.compact .tag{padding:.125rem .3rem;border-radius:2px;font-size:.6rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em;border:none;cursor:pointer}.equipment-config-panel.compact .tag.on.terrain-flat{background:#10b981;color:#fff}.equipment-config-panel.compact .tag.on.terrain-medium{background:#f59e0b;color:#fff}.equipment-config-panel.compact .tag.on.terrain-steep{background:#ef4444;color:#fff}.equipment-config-panel.compact .tag.on.terrain-very_steep{background:#7c2d12;color:#fff}.equipment-config-panel.compact .tag.on.veg-grassland{background:#22c55e;color:#fff}.equipment-config-panel.compact .tag.on.veg-lightshrub{background:#eab308;color:#fff}.equipment-config-panel.compact .tag.on.veg-mediumscrub{background:#f97316;color:#fff}.equipment-config-panel.compact .tag.on.veg-heavyforest{background:#15803d;color:#fff}.equipment-config-panel.compact .eq-actions{display:flex;gap:.125rem}.equipment-config-panel.compact .btn{padding:.125rem .375rem;font-size:.65rem;border-radius:2px;border:1px solid #475569;background:#4755694d;color:#cbd5e1;cursor:pointer;transition:all .2s}.equipment-config-panel.compact .btn:hover{background:#47556980;color:#fff}.equipment-config-panel.compact .btn.del{background:#dc26264d;border-color:#dc2626;color:#fca5a5}.equipment-config-panel.compact .btn.del:hover{background:#dc262680;color:#fff}.equipment-scroll-area{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem;padding:0 .75rem 1rem;scroll-behavior:smooth}.vegetation-guidance-controls{flex:0 0 auto;background:#0f172a66;border-bottom:1px solid #334155;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.vegetation-guidance-controls .search-toolbar{margin:0;padding:.5rem;background:#1e293b4d;border-radius:4px;border:1px solid #334155;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.vegetation-guidance-controls .search-box{flex:1;min-width:120px;padding:.375rem .5rem;font-size:.75rem}.vegetation-guidance-controls .view-controls{gap:.25rem}.vegetation-guidance-controls .view-control-btn,.vegetation-guidance-controls .add-mapping-btn{padding:.375rem .75rem;font-size:.75rem}.vegetation-guidance-controls .mapping-stats{margin:0;padding:.375rem .5rem;font-size:.6rem;background:#0f172a4d;border-radius:4px;border:1px solid #1e293b}.vegetation-guidance-controls .error-message{margin:0;padding:.5rem;font-size:.65rem}.vegetation-section>.vegetation-config-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.vegetation-config-panel{flex:1;display:flex;flex-direction:column;padding:0;overflow:hidden}.vegetation-scroll-area{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem;padding:.75rem;scroll-behavior:smooth}.vegetation-scroll-area{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding:.5rem .75rem 1rem;scroll-behavior:smooth}.vegetation-scroll-area .mappings-container{flex:1;overflow:visible;margin:0;border-radius:6px;background:#0f172a4d;border:1px solid #1e293b;padding:.5rem}.vegetation-scroll-area .hierarchical-mappings,.vegetation-scroll-area .flat-mappings{padding:0;display:flex;flex-direction:column;gap:.25rem}.formation-group{border:1px solid #334155;border-radius:4px;margin-bottom:.25rem;background:#1e293b59}.formation-header{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;cursor:pointer;transition:background .15s}.formation-title{flex:1;display:flex;align-items:center;gap:.5rem;font-weight:600;color:#e2e8f0;font-size:.875rem}.formation-actions{display:flex;gap:.375rem}.formation-actions button,.class-actions button,.type-actions button{background:#3b82f626;border:1px solid #3b82f6;color:#93c5fd;padding:.25rem .5rem;font-size:.75rem;border-radius:3px;cursor:pointer;transition:all .2s}.formation-actions button:hover,.class-actions button:hover,.type-actions button:hover{background:#3b82f6;color:#fff}.equipment-scroll-area,.vegetation-scroll-area{padding-bottom:1rem}.panel-description{padding:.375rem .75rem;margin:.25rem .75rem;font-size:.65rem;line-height:1.2;border-radius:4px;background:linear-gradient(135deg,#3b82f614,#3b82f608);border:1px solid rgba(59,130,246,.15)}.panel-description h3{font-size:.8rem;margin:0 0 .25rem;color:#e2e8f0;font-weight:600}.panel-description p{font-size:.6rem;margin-bottom:.25rem;color:#cbd5e1;line-height:1.3}.tab-guide{padding:.25rem .5rem;margin:.25rem .75rem;font-size:.6rem;line-height:1.2;background:linear-gradient(135deg,#ffffff04,#ffffff01);border-bottom:1px solid rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.03);border-radius:4px}.tab-guide .guide-line{gap:3px;margin-bottom:.125rem}.tab-guide .muted{font-size:.55rem}.search-toolbar{margin:.25rem .75rem;padding:.375rem .5rem;gap:.375rem}.search-box{padding:.375rem .5rem;font-size:.7rem}.view-control-btn{padding:.25rem .5rem;font-size:.65rem}.add-mapping-btn{padding:.375rem .6rem;font-size:.65rem}.mapping-stats{margin:.25rem .75rem;padding:.375rem .5rem;font-size:.6rem}.equip-row{padding:.25rem .5rem;min-height:32px}.equip-row input{padding:3px 5px;font-size:.7rem}.eq-actions .btn{padding:2px 5px!important;font-size:.5rem!important}.tag{padding:1px 4px;font-size:.5rem}.formation-header{padding:4px 6px}.class-header{padding:3px 6px}.type-item{padding:2px 6px 2px 10px}.integrated-config-panel{padding-bottom:0}.integrated-config-panel .shared-config-notice{position:sticky;bottom:0;z-index:20}.integrated-config-panel.compact .config-content{padding:0 .25rem}.compact-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.25rem .5rem;border:1px solid #233040;border-radius:6px;background:#0f172a;margin-bottom:.25rem;flex:0 0 auto}.compact-header .panel-title{font-size:.75rem;margin:0 .5rem 0 0;font-weight:600;color:#e2e8f0;letter-spacing:.5px}.compact-header .main-tabs{display:flex;gap:.25rem}.compact-header .tab-button{padding:.35rem .6rem;font-size:.65rem;line-height:1;border-radius:4px;background:#1e293b;border:1px solid #334155}.compact-header .tab-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.equip-inline-tabs{display:flex;align-items:center;gap:.25rem}.equip-inline-tabs .mini-tab{padding:.25rem .45rem;font-size:.55rem;background:#1e293b;border:1px solid #334155;color:#bcd0e0;border-radius:4px;cursor:pointer}.equip-inline-tabs .mini-tab.active{background:#2563eb;border-color:#2563eb;color:#fff}.equip-inline-tabs .add-equipment-btn.mini{padding:.25rem .4rem;font-size:.6rem;line-height:1}.integrated-config-panel.compact #equipment-panels-container{flex:1 1 auto;min-height:0;display:flex}.integrated-config-panel.compact .equipment-config-panel{flex:1 1 auto}.integrated-config-panel.compact .equipment-config-panel .panel-description,.integrated-config-panel.compact .equipment-config-panel .tab-guide{display:none}.integrated-config-panel.compact .equipment-scroll-area{flex:1 1 auto;min-height:0}.shared-config-notice.compact{margin:.25rem .25rem 0;padding:.35rem .5rem;font-size:.55rem}.shared-config-notice.compact .notice-icon{font-size:.7rem}.shared-config-notice.compact .notice-content{font-size:.55rem;line-height:1.2}.header-center{flex:1;display:flex;justify-content:center;max-width:600px;margin:0 auto}.header-right{flex:0 0 auto}.search-control{position:relative;width:100%;max-width:520px}.header-search-control{width:100%;max-width:640px}.search-modes-above{position:absolute;top:100%;left:0;transform:none;margin-top:8px;display:flex;background:#0f172af2;border:1px solid #334155;border-radius:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #0000004d;overflow:hidden;z-index:1001;--search-modes-offset: 44px}@keyframes slide-down-fade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.search-modes-above{animation:slide-down-fade .18s ease-out}@media (max-width: 760px){.search-modes-above{bottom:auto;top:100%;left:0;transform:none;width:100%;margin-top:8px;border-radius:8px;box-shadow:0 6px 18px #0003}.search-modes-above .search-mode-btn{flex:1 1 auto;padding:8px 10px;font-size:13px}}.search-input-container{position:relative}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:relative;left:0;margin-left:8px;margin-right:8px;font-size:14px;color:#64748b;z-index:2;flex:0 0 auto}.search-input{width:100%;padding:10px 40px 10px 8px;background:#1e293bcc;border:1px solid #475569;border-radius:24px;color:#e2e8f0;font-size:14px;transition:all .3s ease;outline:none}.search-input.collapsed{background:#1e293b99;border-color:#334155}.search-input.expanded{background:#1e293bf2;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;border-radius:8px}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:#64748b}.search-collapse-btn{position:absolute;right:12px;background:none;border:none;color:#64748b;font-size:18px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.search-collapse-btn:hover{color:#e2e8f0;background:#3b82f61a}.search-loading{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:14px}.search-error{position:absolute;top:100%;left:0;right:0;margin-top:4px;padding:8px 12px;background:#ef4444e6;border:1px solid #dc2626;border-radius:4px;color:#fff;font-size:12px;z-index:1002}.search-results{position:absolute;top:calc(100% + var(--search-modes-offset, 44px));left:0;right:0;margin-top:4px;background:#0f172af2;border:1px solid #334155;border-radius:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #0000004d;max-height:300px;overflow-y:auto;z-index:1002}.search-results{animation:slide-down-fade .22s ease-out}.search-mode-btn{flex:1;padding:8px 12px;background:transparent;border:none;color:#94a3b8;font-size:11px;cursor:pointer;transition:all .2s;border-right:1px solid #334155;white-space:nowrap}.search-mode-btn:last-child{border-right:none}.search-mode-btn:hover{background:#3b82f61a;color:#e2e8f0}.search-mode-btn.active{background:#3b82f6;color:#fff}.search-result-item{width:100%;padding:10px 12px;background:transparent;border:none;border-bottom:1px solid rgba(51,65,85,.5);color:#e2e8f0;text-align:left;cursor:pointer;transition:all .2s}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:#3b82f61a}.result-main{font-size:13px;font-weight:500;margin-bottom:2px}.result-sub{font-size:11px;color:#94a3b8;margin-bottom:2px}.result-confidence{font-size:10px;color:#64748b}.search-location-marker{font-size:20px;text-shadow:0 0 4px rgba(0,0,0,.5);cursor:pointer}.equipment-config-panel{flex:1;display:flex;flex-direction:column;padding:0}.equipment-toolbar{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#1e293b4d;border-bottom:1px solid #334155;margin-bottom:1rem}.equipment-toolbar-title{display:flex;align-items:center;gap:.5rem}.current-tab-name{font-size:1.1rem;font-weight:600;color:#e2e8f0}.equipment-count{font-size:.875rem;color:#94a3b8;background:#3b82f633;padding:.25rem .5rem;border-radius:12px}.panel-description{padding:1.5rem;color:#e2e8f0;font-size:.9rem;line-height:1.6;background:linear-gradient(135deg,#3b82f61a,#3b82f60d);border:1px solid rgba(59,130,246,.2);border-radius:8px;margin:1rem}.panel-description h3{margin-top:0;margin-bottom:.75rem;color:#fff;font-size:1.2rem;font-weight:600}.panel-description p{margin:0 0 .5rem;color:#cbd5e1}.panel-description p:last-child{margin:0}.vegetation-config-panel{width:100%;height:100%;overflow-y:auto;color:#f5f7fa;display:flex;flex-direction:column;padding:0}.search-toolbar{display:flex;gap:.75rem;align-items:center;margin:1rem;padding:1rem;background:#1e293b4d;border-radius:8px;border:1px solid #334155;flex-wrap:wrap}.search-box{flex:1;min-width:200px;padding:.625rem;background:#0f172acc;border:1px solid #475569;border-radius:6px;color:#e2e8f0;font-size:.875rem;transition:all .2s}.search-box:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-box::placeholder{color:#64748b}.view-controls{display:flex;gap:.25rem;background:#0f172a80;padding:.25rem;border-radius:6px;border:1px solid #334155}.view-control-btn{padding:.5rem .75rem;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.view-control-btn:hover{color:#e2e8f0;background:#3b82f61a}.view-control-btn.active{background:#3b82f6;color:#fff}.add-mapping-btn{padding:.625rem 1rem;background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s;white-space:nowrap}.add-mapping-btn:hover{background:#047857}.mapping-stats{padding:.75rem 1rem;color:#94a3b8;font-size:.875rem;background:#0f172a4d;margin:0 1rem;border-radius:6px;border:1px solid #1e293b}.vegetation-mappings-list{list-style:none;padding:0;margin:.5rem;display:flex;flex-direction:column;gap:.375rem}.vegetation-mapping-item{background:#1e293b80;border:1px solid #334155;border-radius:6px;padding:.5rem;display:flex;flex-direction:column;gap:.375rem;transition:all .2s}.vegetation-mapping-item:hover{background:#1e293bb3;border-color:#475569}.mapping-header{display:flex;justify-content:space-between;align-items:center}.mapping-name{font-weight:500;color:#e2e8f0;font-size:1rem}.mappings-container{flex:1;overflow-y:auto;margin:0 .75rem .5rem;border-radius:6px;background:#0f172a4d;border:1px solid #1e293b}.hierarchical-mappings,.flat-mappings{padding:.5rem}.vegetation-type-tag,.vegetation-type-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border:1px solid transparent}.vegetation-type-tag.grassland,.vegetation-type-badge.grassland{background-color:#84cc16;color:#1a2e05;border-color:#65a30d}.vegetation-type-tag.lightshrub,.vegetation-type-badge.lightshrub{background-color:#f59e0b;color:#451a03;border-color:#d97706}.vegetation-type-tag.mediumscrub,.vegetation-type-badge.mediumscrub{background-color:#ea580c;color:#1c1917;border-color:#c2410c}.vegetation-type-tag.heavyforest,.vegetation-type-badge.heavyforest{background-color:#166534;color:#dcfce7;border-color:#15803d}.action-btn{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.25rem}.edit-btn,.edit-button{background:#3b82f6;color:#fff}.edit-btn:hover,.edit-button:hover{background:#2563eb;transform:translateY(-1px)}.delete-btn,.delete-button{background:#ef4444;color:#fff}.delete-btn:hover,.delete-button:hover{background:#dc2626;transform:translateY(-1px)}.error-message,.equip-error{background:linear-gradient(135deg,#ef444426,#ef44441a);border:1px solid rgba(239,68,68,.3);border-left:4px solid #ef4444;color:#fecaca;padding:1rem;margin:1rem;border-radius:6px;font-size:.875rem}.loading,.equip-loading{padding:1rem;text-align:center;color:#94a3b8;font-size:.875rem;font-style:italic}.equip-list{display:flex;flex-direction:column;gap:.25rem;padding:.5rem}.empty,.no-mappings{text-align:center;padding:2rem;color:#64748b;font-size:.875rem;font-style:italic}.tab-guide{display:flex;flex-direction:column;gap:.375rem;padding:1rem;background:linear-gradient(135deg,#ffffff05,#ffffff03);border-bottom:1px solid rgba(255,255,255,.05);color:#cbd5e1;font-size:.8125rem;margin:0 1rem 1rem;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.tab-guide .guide-line{display:flex;gap:.5rem;align-items:center}.tab-guide .guide-line strong{color:#e2e8f0;font-weight:600}.tab-guide .muted{color:#94a3b8;font-size:.75rem;font-style:italic}.equip-hint{margin:.25rem .75rem;font-size:.6rem;color:#64748b;font-style:italic;text-align:center;line-height:1.2}.equip-row{display:flex;align-items:center;gap:.375rem;background:#1e293b73;border:1px solid #334155;border-radius:4px;padding:.25rem .5rem;min-height:32px;transition:background .15s,border-color .15s}.equip-row:hover{background:#1e293ba6;border-color:#475569}.equip-row.editing,.equip-row.adding{background:#3b82f61f;border-color:#3b82f6}.eq-name{flex:1 1 160px;min-width:140px;font-weight:500;color:#e2e8f0;font-size:.85rem}.eq-small{width:80px;font-size:.75rem}.eq-xsmall{width:60px;font-size:.75rem}.eq-name.text,.eq-small.text{color:#e2e8f0;font-size:.8rem}.inline-sub{font-size:.65rem;opacity:.75}.equip-row input.eq-name{background:#0f172aa6;border:1px solid #475569;color:#f1f5f9;padding:4px 6px;border-radius:3px;font-size:.7rem}.equip-row input.eq-small,.equip-row input.eq-xsmall{background:#0f172aa6;border:1px solid #475569;color:#f1f5f9;padding:4px 3px;border-radius:3px;font-size:.65rem}.equip-row input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f640}.eq-tags{display:flex;flex-wrap:wrap;gap:2px;max-width:150px}.eq-tags.readonly{opacity:.9}.tag{background:#47556959;color:#cbd5e1;border:1px solid #475569;padding:1px 4px;border-radius:10px;font-size:.5rem;cursor:pointer;line-height:1;font-weight:500;letter-spacing:.5px;transition:all .15s}.tag:hover{background:#4755698c}.tag.on{background:#3b82f6;color:#fff;border-color:#3b82f6}.tag.on:hover{background:#2563eb}.eq-actions{display:flex;gap:2px;margin-left:auto}.eq-actions .btn{background:#1e293b;border:1px solid #334155;color:#cbd5e1;padding:2px 5px;font-size:.5rem;border-radius:3px;cursor:pointer;font-weight:500;letter-spacing:.5px;transition:all .15s}.eq-actions .btn:hover{background:#334155;color:#fff}.eq-actions .btn.save,.eq-actions .btn.edit{background:#3b82f6;border-color:#3b82f6;color:#fff}.eq-actions .btn.save:hover,.eq-actions .btn.edit:hover{background:#2563eb}.eq-actions .btn.del,.eq-actions .btn.cancel{background:#ef4444;border-color:#ef4444;color:#fff}.eq-actions .btn.del:hover,.eq-actions .btn.cancel:hover{background:#dc2626}.equip-list{max-height:100%;overflow-y:auto}.formation-group{border:1px solid #334155;border-radius:4px;margin-bottom:3px;background:#1e293b59}.formation-header{display:flex;align-items:center;gap:4px;padding:4px 6px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s,border-color .15s}.formation-header:hover{background:#3b82f614}.formation-header.selected{background:#3b82f626;border-left:2px solid #3b82f6}.formation-expand-icon{font-size:8px;width:12px;text-align:center;opacity:.8}.formation-title{flex:1;display:flex;align-items:center;gap:4px;font-weight:600;color:#e2e8f0;font-size:.7rem}.formation-actions{display:flex;gap:2px}.formation-actions button{background:#3b82f626;border:1px solid #3b82f6;color:#93c5fd;padding:1px 4px;font-size:.55rem;border-radius:3px;cursor:pointer}.formation-actions button:hover{background:#3b82f6;color:#fff}.class-group{margin-left:14px;border-left:1px dashed #334155}.class-header{display:flex;align-items:center;gap:4px;padding:3px 6px;cursor:pointer;background:#0f172a59;font-size:.65rem;font-weight:500;transition:background .15s}.class-header:hover{background:#3b82f61a}.type-item{margin-left:28px;padding:2px 6px 2px 10px;border-left:1px dotted #334155;display:flex;align-items:center;gap:6px;font-size:.6rem;color:#cbd5e1}.type-item .vegetation-type-tag{text-transform:none;font-size:.5rem;padding:1px 4px}.selection-checkbox{margin-right:4px;accent-color:#3b82f6}.bulk-vegetation-editor,.bulk-editor{margin:0 .75rem .5rem}.mappings-container{padding-bottom:60px}:root{--app-bg: #0f1115;--app-text: #f5f7fa;--muted-text: #94a3b8;--map-attrib-bg: rgba(0,0,0,.35);--map-attrib-text: rgba(255,255,255,.85);--map-attrib-padding: 6px 8px;--map-attrib-font-size: 11px}@keyframes pulse{0%{transform:scale(1);opacity:.8}50%{transform:scale(1.5);opacity:1}to{transform:scale(1);opacity:0}}html,body,#root,.app-shell{margin:0;padding:0;height:100vh;width:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif;background:#0f1115;color:#f5f7fa}.app-shell{display:flex;flex-direction:column}.vegetation-credit{margin-top:8px;font-size:12px;color:var(--muted-text);background:transparent;padding:0;border-radius:0;display:block;line-height:1.2;opacity:.9}.theme-light{--app-bg: #ffffff;--app-text: #0b1220;--muted-text: #475569;--map-attrib-bg: rgba(255,255,255,.85);--map-attrib-text: rgba(0,0,0,.8)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem 1rem;background-color:#1e293b;position:relative}.app-header .header-left,.app-header .header-center,.app-header .header-right{position:static!important;transform:none!important}.header-left{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}.header-center{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0}.header-right{display:flex;align-items:center;flex:0 0 auto}@media (max-width: 760px){.header-titles{display:none}.header-center{justify-content:flex-start;padding-left:8px}}@media (max-width: 420px){.config-panel-toggle{padding:6px 8px;font-size:16px}.config-panel-toggle:after{content:""}.config-panel-toggle{min-width:40px}.config-panel-toggle{display:inline-flex;align-items:center;justify-content:center}.config-panel-toggle{white-space:nowrap}.config-panel-toggle{overflow:hidden}.config-panel-toggle .config-label{display:none!important}.config-panel-toggle:before,.config-panel-toggle:after{content:none!important}.config-panel-toggle .config-icon{display:inline-block}.header-center .header-search-control{max-width:calc(100% - 56px)}}.app-logo{width:44px;height:44px;object-fit:contain;display:block}.header-titles{display:flex;flex-direction:column}.user-location-marker{position:relative;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.user-location-marker .user-location-pulse{width:10px;height:10px;background:#4fc3f7e6;border-radius:50%;box-shadow:0 0 0 4px #4fc3f740;animation:user-pulse 1.8s infinite ease-out}@keyframes user-pulse{0%{transform:scale(.9);opacity:.9}70%{transform:scale(2.6);opacity:0}to{transform:scale(2.6);opacity:0}}.mapbox-geolocate-btn{background:transparent;border:none;padding:8px;font-size:16px;cursor:pointer}.geolocate-control{margin-left:4px}.app-title{font-size:1.5rem;margin:0}.app-subtitle{font-size:1rem;color:#94a3b8}.config-buttons{display:flex;gap:.5rem}.config-panel-toggle{background-color:#334155;color:#f8fafc;border:none;border-radius:4px;padding:.5rem .75rem;cursor:pointer;font-size:.875rem;display:flex;align-items:center;gap:.25rem;transition:background-color .2s}.config-panel-toggle:hover{background-color:#475569}.integrated-config-panel{display:flex;flex-direction:column;position:fixed;inset:0;width:100%;height:100%;background-color:#1e293b;box-shadow:-2px 0 10px #0000004d;z-index:1000;overflow:hidden;padding:1.5rem}.integrated-config-panel.compact{padding:.5rem .5rem .25rem}.integrated-config-panel.compact .config-content{height:auto;overflow:hidden}.integrated-config-panel.compact .config-content>.equipment-section,.integrated-config-panel.compact .config-content>.vegetation-section{flex:1 1 auto;min-height:0}.integrated-config-panel.compact .config-header{margin:0 0 .25rem;padding:0;border:none}.integrated-config-panel.compact .config-header h3{font-size:.75rem}.integrated-config-panel.compact .config-header .close-button{font-size:.9rem;padding:.15rem .35rem}.integrated-config-panel.compact .shared-config-notice{margin-top:.2rem}.integrated-config-panel.compact .tab-button{padding:.35rem .6rem;font-size:.65rem}.integrated-config-panel.compact .config-tabs{margin-bottom:.25rem}.config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.config-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#fff}.config-header .close-button{background:none;border:none;color:#cbd5e1;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.config-header .close-button:hover{background-color:#ffffff1a;color:#fff}.integrated-config-panel .config-tabs{display:flex;border-bottom:1px solid #334155;margin-bottom:1rem}.integrated-config-panel .tab-button{padding:.75rem 1.5rem;margin-right:.5rem;background:none;border:none;color:#cbd5e1;cursor:pointer;border-bottom:2px solid transparent;font-size:1rem;font-weight:500;transition:all .2s}.integrated-config-panel .tab-button:hover{color:#fff}.integrated-config-panel .tab-button.active{color:#fff;border-bottom-color:#3b82f6}.integrated-config-panel .config-content{flex:1;overflow-y:auto;height:calc(100vh - 150px);padding-right:.5rem}.shared-config-notice{display:flex;background-color:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:6px;padding:1rem;margin-top:1rem;align-items:center}.notice-icon{margin-right:1rem;font-size:1.25rem}.notice-content{font-size:.875rem;color:#e2e8f0}.notice-content strong{color:#fff}.override-badge{display:inline-block;background-color:#9333ea;color:#fff;padding:.1rem .3rem;border-radius:3px;font-size:.7rem;margin-left:.5rem}.veg-pct{color:#94a3b8;margin-left:6px;font-size:12px}.veg-meter{height:10px;border-radius:6px;background:#94a3b8}.pct-0{width:0%}.pct-1{width:1%}.pct-2{width:2%}.pct-3{width:3%}.pct-4{width:4%}.pct-5{width:5%}.pct-6{width:6%}.pct-7{width:7%}.pct-8{width:8%}.pct-9{width:9%}.pct-10{width:10%}.pct-11{width:11%}.pct-12{width:12%}.pct-13{width:13%}.pct-14{width:14%}.pct-15{width:15%}.pct-16{width:16%}.pct-17{width:17%}.pct-18{width:18%}.pct-19{width:19%}.pct-20{width:20%}.pct-21{width:21%}.pct-22{width:22%}.pct-23{width:23%}.pct-24{width:24%}.pct-25{width:25%}.pct-26{width:26%}.pct-27{width:27%}.pct-28{width:28%}.pct-29{width:29%}.pct-30{width:30%}.pct-31{width:31%}.pct-32{width:32%}.pct-33{width:33%}.pct-34{width:34%}.pct-35{width:35%}.pct-36{width:36%}.pct-37{width:37%}.pct-38{width:38%}.pct-39{width:39%}.pct-40{width:40%}.pct-41{width:41%}.pct-42{width:42%}.pct-43{width:43%}.pct-44{width:44%}.pct-45{width:45%}.pct-46{width:46%}.pct-47{width:47%}.pct-48{width:48%}.pct-49{width:49%}.pct-50{width:50%}.pct-51{width:51%}.pct-52{width:52%}.pct-53{width:53%}.pct-54{width:54%}.pct-55{width:55%}.pct-56{width:56%}.pct-57{width:57%}.pct-58{width:58%}.pct-59{width:59%}.pct-60{width:60%}.pct-61{width:61%}.pct-62{width:62%}.pct-63{width:63%}.pct-64{width:64%}.pct-65{width:65%}.pct-66{width:66%}.pct-67{width:67%}.pct-68{width:68%}.pct-69{width:69%}.pct-70{width:70%}.pct-71{width:71%}.pct-72{width:72%}.pct-73{width:73%}.pct-74{width:74%}.pct-75{width:75%}.pct-76{width:76%}.pct-77{width:77%}.pct-78{width:78%}.pct-79{width:79%}.pct-80{width:80%}.pct-81{width:81%}.pct-82{width:82%}.pct-83{width:83%}.pct-84{width:84%}.pct-85{width:85%}.pct-86{width:86%}.pct-87{width:87%}.pct-88{width:88%}.pct-89{width:89%}.pct-90{width:90%}.pct-91{width:91%}.pct-92{width:92%}.pct-93{width:93%}.pct-94{width:94%}.pct-95{width:95%}.pct-96{width:96%}.pct-97{width:97%}.pct-98{width:98%}.pct-99{width:99%}.pct-100{width:100%}.veg-meter[data-color="#00aa00"]{background:#0a0}.veg-meter[data-color="#c8c800"]{background:#c8c800}.veg-meter[data-color="#ff8800"]{background:#f80}.veg-meter[data-color="#006400"]{background:#006400}.dist-bar,.dist-bar-compact{display:flex;width:100%;background:#f1f5f9;border-radius:6px;overflow:hidden;margin:6px 0;height:16px}.dist-bar-compact{height:10px}.overlap-section{margin-top:1rem}.overlap-title{margin:0 0 .5rem;font-size:.8rem;letter-spacing:.5px;text-transform:uppercase;color:#f5f7fa}.analysis-panel-permanent .overlap-matrix,.overlap-matrix{display:flex!important;flex-direction:column!important;gap:2px;font-size:.65rem;background:#1e243359;border:1px solid #2a3442;border-radius:6px;padding:6px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.analysis-panel-permanent .overlap-header-row,.analysis-panel-permanent .overlap-row,.overlap-header-row,.overlap-row{display:grid!important;grid-template-columns:92px repeat(4,1fr) 44px!important;align-items:stretch!important;gap:2px}.analysis-panel-permanent .overlap-corner,.analysis-panel-permanent .overlap-col-header,.analysis-panel-permanent .overlap-row-header,.analysis-panel-permanent .overlap-row-total,.overlap-corner,.overlap-col-header,.overlap-row-header,.overlap-row-total{padding:4px 6px;font-weight:600;text-align:center}.analysis-panel-permanent .overlap-col-header,.overlap-col-header{background:#2d36468c;border-radius:4px}.analysis-panel-permanent .overlap-row-header,.overlap-row-header{background:#2d364673;text-align:left;border-radius:4px}.analysis-panel-permanent .overlap-row,.overlap-row{min-height:28px}.analysis-panel-permanent .overlap-cell,.overlap-cell{position:relative;background:#ffffff08;border-radius:3px;overflow:hidden;display:flex!important;align-items:center!important;justify-content:center!important}.analysis-panel-permanent .overlap-cell.max-in-row,.overlap-cell.max-in-row{outline:1px solid rgba(255,255,255,.35)}.analysis-panel-permanent .overlap-row.dominant-row .overlap-row-header,.overlap-row.dominant-row .overlap-row-header{border-left:3px solid #10b981;padding-left:4px}.analysis-panel-permanent .overlap-cell .cell-label,.overlap-cell .cell-label{position:absolute;z-index:2;font-weight:600;color:#f1f5f9;text-shadow:0 1px 2px rgba(0,0,0,.6)}.analysis-panel-permanent .overlap-row-total,.overlap-row-total{background:#2d36468c;border-radius:4px;font-size:.65rem;display:flex;align-items:center;justify-content:center}.analysis-panel-permanent .cell-bar,.cell-bar{position:absolute;left:0;top:0;bottom:0;background:#ffffff1a}.cell-bar[data-color="#00aa00"]{background:linear-gradient(90deg,#0a0,#028a02)}.cell-bar[data-color="#c8c800"]{background:linear-gradient(90deg,#c8c800,#a8a800)}.cell-bar[data-color="#ff8800"]{background:linear-gradient(90deg,#f80,#e06c00)}.cell-bar[data-color="#006400"]{background:linear-gradient(90deg,#006400,#004d00)}.bottom-buttons-container{display:flex;flex-direction:column;align-items:center;padding:8px 0}.buttons-row{display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap}.bmc-fallback{display:inline-block;background:linear-gradient(90deg,#ff6b35,#ff8a4d);color:#fff;padding:6px 12px;border-radius:999px;text-decoration:none;font-weight:600;box-shadow:0 2px 6px #00000040}.bmc-fallback:hover{opacity:.95}.feature-suggestion-button{display:inline-block;background:linear-gradient(90deg,#4c63d2,#5f73e0);color:#fff;padding:6px 12px;border-radius:999px;text-decoration:none;font-weight:600;box-shadow:0 2px 6px #00000040;transition:opacity .2s ease}.feature-suggestion-button:hover{opacity:.95}.cell-bar[data-color="#ff0000"]{background:linear-gradient(90deg,red,#c00)}.flaticon-credit{margin-top:6px;font-size:.75rem;text-align:center;color:#94a3b8}.flaticon-credit a{color:inherit;text-decoration:underline}#root>div>main .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-matrix,#root .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-matrix{display:flex!important;flex-direction:column!important;gap:4px!important}#root>div>main .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-header-row,#root .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-row{display:grid!important;grid-template-columns:92px repeat(4,1fr) 44px!important;gap:6px!important;align-items:center!important}#root>div>main .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-cell{display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;min-height:28px!important}#root>div>main .analysis-section .analysis-content .slope-analysis-section .overlap-section .overlap-cell .cell-bar{position:absolute!important;left:0!important;top:0!important;bottom:0!important}.dist-seg{height:100%;position:relative;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#0f1115;text-shadow:0 1px 2px rgba(255,255,255,.7)}.dist-seg:not(:last-child){box-shadow:inset -1px 0 #ffffff8c}.dist-inner-label{padding:0 2px;line-height:1;pointer-events:none}.dist-seg[data-color="#00aa00"]{background:linear-gradient(135deg,#0a0,#028a02)}.dist-seg[data-color="#c8c800"]{background:linear-gradient(135deg,#c8c800,#a8a800)}.dist-seg[data-color="#ff8800"]{background:linear-gradient(135deg,#f80,#e06c00)}.dist-seg[data-color="#006400"]{background:linear-gradient(135deg,#006400,#004d00)}.dist-seg[data-color="#ff0000"]{background:linear-gradient(135deg,red,#c00)}.dist-seg[data-color="#FFF380"]{background:linear-gradient(135deg,#fff380,#ffec7a)}.dist-seg[data-color="#B4DFAF"]{background:linear-gradient(135deg,#b4dfaf,#9fd89a)}.dist-seg[data-color="#4CAF50"]{background:linear-gradient(135deg,#4caf50,#388e3c)}.dist-seg[data-color="#003300"]{background:linear-gradient(135deg,#030,#020)}.dist-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:12px}.dist-legend-item{display:flex;align-items:center;gap:4px}.dist-swatch{width:12px;height:12px;border-radius:3px;background:#94a3b8;display:inline-block}.dist-swatch[data-color="#00aa00"],.dist-seg[data-color="#00aa00"]{background:#0a0}.dist-swatch[data-color="#c8c800"],.dist-seg[data-color="#c8c800"]{background:#c8c800}.dist-swatch[data-color="#ff8800"],.dist-seg[data-color="#ff8800"]{background:#f80}.dist-swatch[data-color="#006400"],.dist-seg[data-color="#006400"]{background:#006400}.dist-swatch[data-color="#ff0000"],.dist-seg[data-color="#ff0000"]{background:red}.dist-swatch[data-color="#FFF380"],.dist-seg[data-color="#FFF380"]{background:#fff380}.dist-swatch[data-color="#B4DFAF"],.dist-seg[data-color="#B4DFAF"]{background:#b4dfaf}.dist-swatch[data-color="#4CAF50"],.dist-seg[data-color="#4CAF50"]{background:#4caf50}.dist-swatch[data-color="#003300"],.dist-seg[data-color="#003300"]{background:#030}.dist-legend-pct{color:#64748b;font-weight:500}[class*=dist-pct-]{width:auto}.popup-analysis{min-width:260px}.popup-title{font-weight:700}.popup-summary{font-size:12px;color:#334155;margin-bottom:6px}.popup-section-title{margin-top:6px;font-weight:600}.popup-section-sub{font-size:11px;color:#475569;margin-bottom:6px}.popup-bar-row{display:flex;align-items:center;gap:8px;margin:4px 0;font-size:11px}.popup-bar-label{width:60px}.popup-bar-track{flex:1;background:#eee;height:8px;border-radius:4px;overflow:hidden;position:relative}.popup-bar-fill{position:absolute;left:0;top:0;height:100%}.popup-bar-value{width:55px;text-align:right}.popup-bar-fill[data-color="#00aa00"]{background:#0a0}.popup-bar-fill[data-color="#c8c800"]{background:#c8c800}.popup-bar-fill[data-color="#ff8800"]{background:#f80}.popup-bar-fill[data-color="#ff0000"]{background:red}.equipment-config-panel.sidebar{position:fixed;top:10vh;right:0;width:min(860px,100%);max-width:100%;height:90vh;background:#141922fa;border-left:1px solid #1e2732;box-shadow:-4px 0 12px -2px #00000080;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;z-index:900}.equipment-config-panel.sidebar .config-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #233040}.equip-tabs{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#16202b;border-bottom:1px solid #233040;flex-wrap:wrap}.equip-tab-spacer{flex:1}.equip-content{flex:1;overflow:auto;padding:12px 14px 40px;display:flex;flex-direction:column;gap:10px}.equipment-config-panel.sidebar .tab-guide{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:linear-gradient(180deg,#ffffff05,#ffffff03);border-bottom:1px solid rgba(255,255,255,.03);color:#cfe8ff;font-size:13px;max-height:72px;overflow:auto}.equipment-config-panel.sidebar .tab-guide .guide-line{display:flex;gap:8px;align-items:center}.equipment-config-panel.sidebar .tab-guide .guide-line strong{color:#e6f7ff;font-weight:600}.equipment-config-panel.sidebar .tab-guide .muted{color:#94a3b8;font-size:12px}.equip-list{display:flex;flex-direction:column;gap:4px}.equipment-config-panel.sidebar .equip-row{display:grid;grid-template-columns:minmax(140px,1.2fr) repeat(4,minmax(70px,110px)) minmax(70px,110px) minmax(120px,1fr) minmax(120px,1fr) 90px;gap:6px;padding:6px 8px;background:#1d2732;border:1px solid #233040;border-radius:6px;align-items:center;font-size:13px;box-sizing:border-box}.equipment-config-panel.sidebar .equip-row.editing{background:#223547}.equipment-config-panel.sidebar .equip-row.adding{background:#1f3444;border-style:dashed}.eq-name{width:100%;font-size:13px;min-width:0;box-sizing:border-box;color:#e2e8f0;font-weight:500}.eq-small,.eq-xsmall{width:100%;min-width:0;box-sizing:border-box;color:#cbd5e1}.eq-tags{display:flex;gap:4px;flex-wrap:wrap;max-width:100%}.eq-tags.readonly{opacity:.8}.tag{background:#2b3b4a;border:none;color:#bcd0e0;padding:2px 6px;border-radius:4px;cursor:pointer;font-size:11px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag.on{background:#0d6efd;color:#fff}.tag.mini{cursor:default}.inline-sub{font-size:10px;opacity:.75;margin-left:4px}.cycle-hint{grid-column:1 / -1;font-size:11px;color:#8aa9bf;margin-top:2px}.eq-actions{display:flex;gap:4px;justify-content:flex-end}.btn{background:#2e3c4b;border:1px solid #3c4c5d;color:#d0d8e0;padding:4px 8px;font-size:12px;border-radius:4px;cursor:pointer}.btn:hover:not(:disabled){background:#375168}.btn.save{background:#0d8045;border-color:#0d8045}.btn.save:hover{background:#0b6a39}.btn.del{background:#7a1d1d;border-color:#7a1d1d}.btn.del:hover{background:#641717}.btn.cancel{background:#444f5a}.btn.edit{background:#315170}.quick-add{background:#0d6efd;border:1px solid #0d6efd;color:#fff;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:12px}.quick-add:disabled{opacity:.5;cursor:not-allowed}.equip-error{background:#872626;padding:6px 10px;border-radius:4px;font-size:12px}.equip-loading{font-size:12px;color:#94a3b8}.equip-hint{margin:4px 0 0;font-size:11px;color:#6f8394}.close-button{background:#2d3a48;border:1px solid #3b4a59;color:#d5dde4;padding:4px 8px;border-radius:4px;cursor:pointer}.close-button:hover{background:#3b4a59}.tab-button.active{background:#0d6efd;color:#fff}.tab-button{background:#243240;border:1px solid #2f4152;padding:6px 12px;border-radius:4px;color:#c1ced8;cursor:pointer;font-size:12px}.tab-button:hover{background:#2e4153}.empty{font-size:12px;opacity:.7;padding:8px}@media (max-width: 760px){.equipment-config-panel.sidebar{width:100%;right:0;left:0;top:8vh;height:92vh}.equip-row{display:flex;flex-direction:column;align-items:stretch;gap:8px;grid-template-columns:none}.eq-actions,.eq-tags{justify-content:flex-start}.tab-guide{max-height:none}}.app-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;min-height:56px;padding:0 1.25rem;background:linear-gradient(135deg,#1e2633,#19202a);border-bottom:1px solid #222b36;box-shadow:0 2px 4px #0006;z-index:500;position:relative}.app-header .header-left{display:flex;align-items:center;gap:.75rem;flex:0 0 auto}.app-header .header-center{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0}.app-header .header-right{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto}@media (max-width: 760px){.app-header{padding:0 .75rem}.app-header .header-titles{display:none}.app-header .header-center{justify-content:flex-start;padding-left:8px}}.app-title{margin:0;font-size:clamp(1.1rem,2vw,1.6rem);letter-spacing:.5px}.formation-summary{margin-top:8px}.formation-summary .formation-title{font-size:12px;color:#cbd5e1;margin-bottom:6px}.formation-list{display:flex;flex-direction:column;gap:6px}.formation-row{display:flex;align-items:center;gap:8px}.formation-swatch{width:8px;flex:0 0 8px;height:8px;border-radius:2px;background:#7b8794;margin-right:6px}.formation-label{flex:0 0 160px;font-size:12px;color:#e6eef8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.formation-bar{flex:1;height:10px;background:#1f2a33;border-radius:6px;overflow:hidden;margin-left:8px;margin-right:8px}.formation-bar-fill{height:100%;background:#5aa04a}.formation-pct{width:48px;font-size:11px;color:#9fb0bf;text-align:right}.formation-supporting{margin-top:8px;font-size:11px;color:#9fb0bf}.formation-supporting .example{background:#0f1720;padding:2px 6px;border-radius:4px;margin-right:6px;display:inline-block}.overlap-aux{margin-top:10px;display:flex;flex-direction:column;gap:8px}.overlap-legend{margin-top:8px}.overlap-legend .legend-title{font-size:12px;margin-bottom:6px;color:#cbd5e1}.overlap-legend .legend-items{display:flex;gap:8px}.app-subtitle{font-size:.75rem;opacity:.7}.app-main{flex:1 1 auto;min-height:0;position:relative;display:flex;flex-direction:column}.map-section{flex:1 1 auto;min-height:0}.analysis-section{flex:0 0 auto;height:300px;min-height:200px}@media (min-width: 1024px){.app-main{flex-direction:row}.map-section{flex:1 1 auto;min-width:0}.analysis-section{flex:0 0 400px;height:auto;min-height:0}}.map-wrapper,.map-container,.map-section .map-wrapper,.map-section .map-container{height:100%;width:100%}.map-container{outline:none}.map-error{position:absolute;top:.75rem;left:50%;transform:translate(-50%);background:#b00020;color:#fff;padding:.6rem 1rem;border-radius:4px;font-size:.85rem;z-index:800;box-shadow:0 2px 6px #0006}.map-info{position:absolute;top:.75rem;right:.75rem;background:#1e2433f2;color:#d0d6dd;padding:.6rem 1rem;border-radius:4px;font-size:.85rem;z-index:800;box-shadow:0 2px 6px #0006;border:1px solid #2a3442}.map-analyzing-badge{position:absolute;bottom:.9rem;left:.9rem;display:inline-flex;align-items:center;gap:.5rem;background:#0f1115d9;color:#d0f0ff;padding:.35rem .6rem;border-radius:999px;font-size:.85rem;z-index:900;border:1px solid rgba(79,195,247,.12);box-shadow:0 4px 12px #00000059}.map-analyzing-badge .map-analyzing-text{font-weight:600;color:#cbefff}.mapboxgl-ctrl-group{background:#1e2433fa!important;border-radius:4px!important;border:1px solid #2a3442!important;box-shadow:0 2px 8px #0000004d!important}.mapboxgl-ctrl-group button{background:transparent!important;color:#f5f7fa!important;border:none!important;padding:8px!important;min-width:36px!important;min-height:36px!important;cursor:pointer!important}.mapboxgl-ctrl-group button:hover{background:#4fc3f71f!important}.mapboxgl-ctrl-group button.active{background:#4fc3f733!important}@media (max-width: 768px){.mapboxgl-ctrl-group button{min-width:44px!important;min-height:44px!important;padding:10px!important}}*:focus{outline:2px solid #4fc3f7;outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:#4fc3f7;color:#1e2633;padding:8px;text-decoration:none;border-radius:4px;z-index:1000;font-weight:600}.skip-link:focus{top:6px}.skip-link:focus-visible{top:6px}.panel-guidance-note{font-size:.75rem;color:#94a3b8}.clarity-consent-banner{font-family:inherit}.clarity-consent-banner button:focus{outline:2px solid #4fc3f7;outline-offset:2px}.mapboxgl-ctrl-group{box-shadow:0 2px 8px #0000004d!important}.mapboxgl-ctrl-group label:hover{background:#ffffff0d;border-radius:2px;padding:2px 4px;margin:-2px -4px;transition:background .15s}.mapboxgl-ctrl-group input[type=radio]:focus,.mapboxgl-ctrl-group input[type=checkbox]:focus{outline:2px solid #4fc3f7;outline-offset:1px}button:focus{outline:2px solid #4fc3f7!important;outline-offset:2px!important}.analysis-spinner{display:inline-flex;align-items:center;gap:.5rem;color:#4fc3f7;font-size:.85rem}.spinner{width:16px;height:16px;border:2px solid rgba(79,195,247,.2);border-top:2px solid #4fc3f7;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.analysis-loading-overlay{position:relative}.analysis-loading-overlay:after{content:"";position:absolute;inset:0;background:#0f1115b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:4px;z-index:1}.analysis-loading-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#4fc3f7;font-size:.9rem;font-weight:500}.analysis-loading-content .spinner{width:24px;height:24px;border-width:3px}.analysis-panel-permanent{height:100%;background:#0f1115f2;border:1px solid #2a3442;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 12px #0000004d;overflow:hidden;display:flex;flex-direction:column}.analysis-header{padding:1rem;border-bottom:1px solid #2a3442;cursor:pointer;display:flex;align-items:center;justify-content:space-between;background:#1e2433cc;flex:0 0 auto}.analysis-header h3{margin:0;color:#f5f7fa;font-size:1rem;font-weight:600}.distance-display{color:#ff6b35;font-weight:600;font-size:.9rem}.expand-button{background:#ff6b351a;border:1px solid #ff6b35;color:#ff6b35;font-size:1rem;cursor:pointer;padding:.4rem .6rem;border-radius:4px;transition:all .2s;font-weight:600}.expand-button:hover{background:#ff6b3533;transform:translateY(-1px)}.analysis-content{padding:1rem;flex:1 1 auto;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.best-options-summary{margin-bottom:1rem}.best-options-summary h4{margin:0 0 .75rem;color:#f5f7fa;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.best-options-grid{display:grid;gap:.75rem;grid-template-columns:1fr}@media (min-width: 1024px){.best-options-grid{grid-template-columns:1fr}}.option-category{background:#1e243399;border:1px solid #2a3442;border-radius:6px;padding:.5rem .75rem;display:flex;flex-direction:column;gap:.5rem;transition:all .2s ease}.option-category:hover{background:#1e2433cc;border-color:#3a4452}.category-header{display:flex;align-items:center;gap:.5rem}.category-icon{font-size:1rem;line-height:1}.category-label{font-size:.8rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.option-details{display:flex;justify-content:space-between;align-items:center}.option-with-select{gap:.5rem}.option-with-select,.option-main-line{display:flex;align-items:center}.quick-select{background:linear-gradient(145deg,#1e2433f2,#161b25f2);color:#f5f7fa;border:1px solid #2a3442;border-radius:6px;padding:.4rem 1.75rem .4rem .65rem;font-size:.85rem;font-weight:500;letter-spacing:.3px;cursor:pointer;min-width:150px;outline:none;-webkit-appearance:none;appearance:none;position:relative;line-height:1.2;transition:border-color .15s,box-shadow .15s,background .25s;font-family:inherit}.quick-select:hover{border-color:#3a4452;background:linear-gradient(145deg,#242c3af2,#1a202af2)}.quick-select:focus{border-color:#4fc3f7;box-shadow:0 0 0 2px #4fc3f759}.quick-select option[disabled]{color:#6b7280}.quick-select option[data-incompatible=true]{color:#9aa4ad}.quick-select{background-image:linear-gradient(145deg,#1e2433f2,#161b25f2),url("data:image/svg+xml,%3Csvg width='10' height='8' viewBox='0 0 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 5 4-5' stroke='%23cbd5e1' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:left top,right 10px center;background-size:auto,10px 8px}.analysis-panel-permanent select,.analysis-panel-permanent .quick-select,.equipment-edit-form select,.condition-controls select{background:linear-gradient(145deg,#1e2433fa,#12161cfa);color:#f5f7fa}.analysis-panel-permanent select option,.analysis-panel-permanent .quick-select option,.equipment-edit-form select option,.condition-controls select option{background:#161a20fa;color:#f5f7fa}.quick-select::-ms-expand{display:none}.quick-select{background-image:linear-gradient(145deg,#1e2433f2,#161b25f2),url("data:image/svg+xml,%3Csvg width='10' height='8' viewBox='0 0 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 5 4-5' stroke='%23cbd5e1' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat,no-repeat;background-position:left top,right 8px center;background-size:auto,10px 8px}.option-name{font-weight:500;color:#f5f7fa;font-size:.85rem}.option-time{font-weight:600;color:#4fc3f7;font-size:.85rem}.drop-preview-toggle{display:flex;align-items:center;gap:.5rem}.drop-preview-toggle{position:relative}.drop-toggle-button{position:relative;width:32px;height:32px;border-radius:8px;border:1px solid rgba(79,195,247,.25);background:#1e2433d9;color:#c2e9fb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .2s;flex:0 0 auto;margin-left:.4rem}.drop-toggle-button:hover{background:#282e3df2;border-color:#4fc3f7}.drop-toggle-button:active{transform:translateY(1px)}.drop-toggle-button.active{background:linear-gradient(135deg,#4fc3f72e,#4fc3f747);border-color:#4fc3f7;color:#4fc3f7;box-shadow:0 0 0 2px #4fc3f740}.aircraft-selection-row{display:flex;align-items:center;gap:.5rem}.aircraft-selection-row .quick-select{flex:1;min-width:120px}.table-row{position:relative}.row-drop-toggle-button{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;position:absolute;right:8px;top:10px;z-index:10}.row-drop-toggle-button.active{color:#4fc3f7}.drop-preview-text,.drop-preview-text-small{font-size:.85rem;color:#94a3b8}.no-option{font-size:.8rem;color:#6b7280;font-style:italic}.no-line-message{text-align:center;color:#94a3b8;font-style:italic;padding:2rem 1rem}.analysis-panel{display:none}.conditions-section,.equipment-summary{margin-bottom:1.5rem}.breaks-list{border:1px solid #2a3442;background:#1e243399;padding:.75rem;border-radius:6px}.breaks-list .break-item{border-top:1px solid rgba(42,52,66,.3);padding:.5rem 0}.breaks-list .break-item:first-child{border-top:none}.break-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.break-recommendations{display:flex;gap:.75rem;flex-wrap:wrap;color:#d0d6dd;font-size:.85rem}.break-distance{color:#ff6b35;font-weight:600}.conditions-section h4,.equipment-summary h4{margin:0 0 .75rem;color:#f5f7fa;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.condition-controls{display:flex;gap:1rem;flex-wrap:wrap}.condition-controls label{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:#d0d6dd;flex:1;min-width:140px}.condition-controls select{padding:.5rem;border:1px solid #2a3442;border-radius:4px;background:#1e2433cc;color:#d0d6dd;font-size:.8rem}.equipment-categories{display:flex;flex-direction:column;gap:1.5rem}.equipment-category-section{border:1px solid #2a3442;border-radius:8px;overflow:hidden;background:#1e243366}.category-section-header{display:flex;align-items:center;gap:.5rem;margin:0;padding:.75rem 1rem;background:#1e2433cc;border-bottom:1px solid #2a3442;color:#f5f7fa;font-size:.9rem;font-weight:600}.category-section-icon{font-size:1.1rem;line-height:1}.equipment-table{border:none;border-radius:0;overflow:hidden}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:1rem;padding:.75rem;background:#1e243399;border-bottom:1px solid #2a3442;font-size:.8rem;font-weight:600;color:#f5f7fa;text-transform:uppercase;letter-spacing:.5px}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:1rem;padding:.75rem;border-bottom:1px solid rgba(42,52,66,.3);transition:background-color .2s}.table-row:hover{background:#1e24334d}.table-row:last-child{border-bottom:none}.table-row.incompatible{opacity:.5;background:#b446461a}.equipment-info{display:flex;align-items:center;gap:.5rem}.equipment-icon{font-size:1.2rem;line-height:1;min-width:1.5rem;text-align:center}.equipment-details{display:flex;flex-direction:column;gap:.2rem;min-width:0}.equipment-name{font-weight:500;color:#f5f7fa;font-size:.85rem}.equipment-type{font-size:.7rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.time-info{display:flex;flex-direction:column;align-items:flex-end}.time-value{font-weight:600;color:#4fc3f7;font-size:.9rem}.time-unit{font-size:.7rem;color:#94a3b8}.cost-info{display:flex;align-items:center;justify-content:flex-end}.cost-value{font-weight:600;color:#81c784;font-size:.85rem}.no-cost{color:#6b7280;font-size:.8rem}.status-info{display:flex;align-items:center;font-size:.8rem}.compatible{color:#10b981;font-weight:500}.incompatible-status{color:#ef4444;font-weight:500}.incompatible-text{color:#6b7280;font-style:italic}@media (max-width: 768px){.best-options-grid{gap:.5rem}.option-category{padding:.5rem}.category-header{gap:.4rem}.category-icon{font-size:.9rem}.category-label{font-size:.75rem}.option-name,.option-time{font-size:.8rem}.equipment-categories{gap:1rem}.category-section-header{padding:.6rem .8rem;font-size:.85rem}.category-section-icon{font-size:1rem}.table-header{grid-template-columns:1.5fr 1fr 1fr;gap:.5rem;padding:.6rem;font-size:.75rem}.table-row{grid-template-columns:1.5fr 1fr 1fr;gap:.5rem;padding:.6rem}.equipment-icon{font-size:1rem;min-width:1.2rem}.equipment-name{font-size:.8rem}.equipment-type{font-size:.65rem}.status-info{grid-column:1 / -1;margin-top:.5rem;padding-top:.5rem;border-top:1px solid rgba(42,52,66,.3)}}.analysis-content::-webkit-scrollbar{width:6px}.analysis-content::-webkit-scrollbar-track{background:#1e24334d;border-radius:3px}.analysis-content::-webkit-scrollbar-thumb{background:#a0aec066;border-radius:3px}.analysis-content::-webkit-scrollbar-thumb:hover{background:#a0aec099}.vertex-marker-icon{width:14px;height:14px;border-radius:50%;background:#ff6b35;border:2px solid rgba(0,0,0,.35);box-shadow:0 1px 3px #0006}.midpoint-marker-icon{width:14px;height:14px;border-radius:50%;background:#fff0;border:2px solid rgba(255,107,53,.9);box-shadow:0 1px 2px #00000040}.config-panel-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:#ff6b35f2;color:#fff;border:none;padding:.5rem .9rem;border-radius:6px;cursor:pointer;font-weight:600;font-size:.9rem;z-index:600;box-shadow:0 2px 8px #0000004d}.veg-stat-row{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:12px}.veg-label{width:70px;color:#d0d6dd}.veg-bar{flex:1;background:#eee;height:10px;position:relative;border-radius:5px;overflow:hidden}.veg-meter{position:absolute;left:0;top:0;height:100%;background:#0a0}.veg-meta{width:72px;text-align:right;color:#d0d6dd;font-size:12px}.config-panel-toggle:hover{background:#ff6b35;transform:translateY(-52%);box-shadow:0 4px 12px #0006}.equipment-config-panel.fullscreen{position:fixed;inset:0;background:#0f1115fa;z-index:1200;display:flex;flex-direction:column;overflow:hidden}.equipment-config-panel.fullscreen .config-header{padding:1.5rem;border-bottom:1px solid #2a3442;display:flex;justify-content:space-between;align-items:center;background:#1e2433cc}.equipment-config-panel.fullscreen .config-header h3{margin:0;color:#f5f7fa;font-size:1.25rem}.shared-config-notice{display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,#ffc10726,#ffc10714);border:1px solid rgba(255,193,7,.3);border-left:4px solid #ffc107;color:#f8f9fa;padding:12px 20px;margin:0;font-size:14px;line-height:1.4}.shared-config-notice .notice-icon{font-size:18px;flex-shrink:0}.shared-config-notice .notice-content{flex:1}.shared-config-notice strong{color:#ffc107;font-weight:600}.equipment-config-panel.fullscreen .equip-tabs{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#16202b;border-bottom:1px solid #233040;flex-wrap:wrap}.equipment-config-panel.fullscreen .equip-content{flex:1;overflow:auto;padding:16px 20px 40px;display:flex;flex-direction:column;gap:12px}.equipment-config-panel.fullscreen .equip-row{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(80px,120px)) minmax(140px,1.2fr) minmax(140px,1.2fr) 110px;gap:8px;padding:8px 12px;background:#1d2732;border:1px solid #233040;border-radius:6px;align-items:center;font-size:13px;box-sizing:border-box;min-height:48px}.equipment-config-panel.fullscreen .equip-row.editing{background:#223547;padding:12px;gap:10px}.equipment-config-panel.fullscreen .equip-row.adding{background:#1f3444;border-style:dashed;padding:12px;gap:10px}.equipment-config-panel.fullscreen .tab-guide{display:flex;flex-direction:column;gap:6px;padding:12px 20px;margin:0 0 8px;background:linear-gradient(180deg,#ffffff05,#ffffff03);border-bottom:1px solid rgba(255,255,255,.03);color:#cfe8ff;font-size:13px}.equipment-config-panel.fullscreen .tab-guide .guide-line{display:flex;gap:8px;align-items:center;padding:0;margin:0}.equipment-config-panel.fullscreen .tab-guide .guide-line strong{color:#e6f7ff;font-weight:600}.equipment-config-panel.fullscreen .tab-guide .muted{color:#94a3b8;font-size:12px}@media (max-width: 1200px){.equipment-config-panel.fullscreen .equip-row{grid-template-columns:minmax(160px,1.3fr) repeat(3,minmax(75px,110px)) minmax(120px,1fr) minmax(120px,1fr) 100px}}@media (max-width: 900px){.equipment-config-panel.fullscreen .equip-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;grid-template-columns:none}.equipment-config-panel.fullscreen .eq-actions,.equipment-config-panel.fullscreen .eq-tags{justify-content:flex-start}}.config-header{padding:1.5rem;border-bottom:1px solid #2a3442;display:flex;justify-content:space-between;align-items:center;background:#1e2433cc}.config-header h3{margin:0;color:#f5f7fa;font-size:1.25rem}.close-button{background:none;border:1px solid #ff6b35;color:#ff6b35;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-button:hover{background:#ff6b351a;transform:scale(1.1)}.config-tabs{display:flex;border-bottom:1px solid #2a3442;background:#1e243399}.tab-button{padding:1rem 1.5rem;border:none;background:none;color:#94a3b8;cursor:pointer;font-size:.9rem;font-weight:500;border-bottom:3px solid transparent;transition:all .2s}.tab-button:hover{color:#d0d6dd;background:#2d36464d}.tab-button.active{color:#ff6b35;border-bottom-color:#ff6b35;background:#ff6b351a}.config-content{flex:1;overflow-y:auto;padding:1.5rem}.equipment-list{display:grid;gap:1.5rem;max-width:1200px;margin:0 auto}.equipment-item{background:#1e243399;border:1px solid #2a3442;border-radius:8px;padding:1.5rem}.equipment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.equipment-header h5{margin:0;color:#f5f7fa;font-size:1.1rem}.edit-button{background:#4fc3f733;border:1px solid #4fc3f7;color:#4fc3f7;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.edit-button:hover{background:#4fc3f74d;transform:translateY(-1px)}.equipment-details{color:#94a3b8;font-size:.9rem;line-height:1.5}.equipment-details p{margin:.5rem 0}.equipment-edit-form{background:#2d3646cc;border-radius:6px;padding:1.5rem}.equipment-edit-form h5{margin:0 0 1.5rem;color:#f5f7fa;font-size:1.1rem;border-bottom:1px solid #2a3442;padding-bottom:.75rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:1.5rem}.form-grid label{display:flex;flex-direction:column;gap:.5rem;color:#d0d6dd;font-size:.9rem;font-weight:500}.form-grid input,.form-grid textarea{padding:.75rem;border:1px solid #2a3442;border-radius:4px;background:#0f1115cc;color:#f5f7fa;font-size:.9rem}.form-grid input:focus,.form-grid textarea:focus{outline:none;border-color:#ff6b35;background:#0f1115e6}.form-grid textarea{min-height:80px;resize:vertical}.constraints-section{margin-bottom:1.5rem}.constraints-section h6{margin:1rem 0 .75rem;color:#f5f7fa;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;color:#94a3b8;font-size:.85rem;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.checkbox-label:hover{background:#2d36464d}.checkbox-label input[type=checkbox]{accent-color:#ff6b35;width:16px;height:16px}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #2a3442}.save-button{background:#10b98133;border:1px solid #10b981;color:#10b981;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:600;transition:all .2s}.save-button:hover{background:#10b9814d;transform:translateY(-1px)}.cancel-button{background:#6b728033;border:1px solid #6b7280;color:#6b7280;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-weight:600;transition:all .2s}.cancel-button:hover{background:#6b72804d}.header-info{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.slope-display{color:#94a3b8;font-weight:500}.analysis-loading{color:#ff6b35;font-size:.8rem;font-style:italic}.slope-summary{color:#94a3b8;font-size:.8rem}.slope-analysis-section{background:#1e243366;padding:1rem;border-radius:6px;margin-bottom:1rem}.slope-analysis-section h4{color:#e1e7ef;margin:0 0 .75rem;font-size:.95rem}.slope-stats{display:flex;gap:1rem;margin-bottom:.75rem}.slope-stats span{color:#94a3b8;font-size:.85rem}.slope-distribution{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.slope-category{display:flex;justify-content:space-between;padding:.4rem .6rem;border-radius:4px;font-size:.8rem}.slope-category.flat{background:#00ff001a;color:#4ade80}.slope-category.medium{background:#ffff001a;color:#fbbf24}.slope-category.steep{background:#ff88001a;color:#f97316}.slope-category.very-steep{background:#ff00001a;color:#ef4444}.incompatible-details{display:flex;flex-direction:column;gap:.25rem}.slope-warning{color:#f97316;font-size:.75rem;font-style:italic}.auto-detected-vegetation{background:#1e243366;padding:1rem;border-radius:6px;margin-bottom:.75rem;border-left:3px solid #10b981}.auto-detected-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.auto-detected-label{color:#e1e7ef;font-size:.9rem}.confidence-badge{background:#10b98133;color:#10b981;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600}.vegetation-toggle{display:flex;align-items:center}.vegetation-toggle label{display:flex;align-items:center;gap:.5rem;color:#94a3b8;font-size:.85rem;cursor:pointer;margin:0}.vegetation-toggle input[type=checkbox]{accent-color:#10b981;width:16px;height:16px}.effective-vegetation{margin-top:.5rem;padding:.5rem;background:#2d36464d;border-radius:4px;color:#94a3b8;font-size:.8rem;text-align:center}.effective-vegetation strong{color:#e1e7ef}.mapbox-map-container{width:100%;height:100%;position:relative}.mapbox-map{width:100%;height:100%}.map-error-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#dc2626e6;color:#fff;padding:16px 20px;border-radius:8px;font-size:14px;z-index:1000;text-align:center;max-width:80%}.map-error-overlay strong{display:block;margin-bottom:8px;font-size:16px}.touch-hint-overlay{position:absolute;top:20px;right:20px;background:#000c;color:#fff;padding:12px;border-radius:6px;font-size:14px;max-width:200px;z-index:1000;display:flex;align-items:center;justify-content:space-between}.touch-hint-overlay button{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;margin-left:8px;display:flex;align-items:center;justify-content:center}.analyzing-badge{position:absolute;bottom:20px;right:20px;background:#0284c7cc;color:#fff;padding:6px 12px;border-radius:4px;font-size:14px;z-index:990}.distance-badge{position:absolute;bottom:20px;left:20px;background:#000000b3;color:#fff;padding:6px 12px;border-radius:4px;font-size:14px;z-index:990;font-weight:500;width:auto;height:auto;max-width:200px;display:inline-block}.aircraft-drop-marker{width:12px;height:12px;background:#ff4500;border-radius:50%;border:2px solid #ffffff;box-shadow:0 0 0 2px #ff45004d}.mapbox-gl-draw_ctrl-draw-btn{background-color:#3773b3!important;border-color:#aaa!important;box-shadow:0 1px 4px #0000004d!important}.mapbox-gl-draw_ctrl-draw-btn.active{background-color:#2c5d91!important;border-color:#fff!important}.mapbox-gl-draw_ctrl-draw-btn svg{fill:#fff!important;stroke:#fff!important;stroke-width:.5px!important}.mapbox-gl-draw_line{border-left:3px solid #ffffff!important}.mapbox-gl-draw_trash{background-color:#b92d2b!important;border-left:3px solid #ffffff!important}.mapboxgl-ctrl-group{background-color:#fff!important;box-shadow:0 2px 6px #0006!important;border:1px solid #cccccc!important;margin-bottom:10px!important}.mapboxgl-ctrl-top-left .mapboxgl-ctrl{margin:10px 0 0 10px!important}.mapboxgl-ctrl-top-right .mapboxgl-ctrl{margin:10px 10px 0 0!important}.mapboxgl-ctrl-group.mapboxgl-ctrl-group-draw{background-color:#0000001a!important;padding:2px!important;border:2px solid #ffffff!important}.mapboxgl-ctrl button{background-color:#fff!important;border-bottom:1px solid #e0e0e0!important}.mapbox-gl-draw_ctrl-draw-btn{position:relative!important;width:30px!important;height:30px!important;display:flex!important;align-items:center!important;justify-content:center!important}.mapbox-gl-draw_line:after{content:"✏️";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;text-shadow:0 0 2px rgba(0,0,0,.5)}.mapbox-gl-draw_trash:after{content:"🗑️";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;text-shadow:0 0 2px rgba(0,0,0,.5)}.mapboxgl-ctrl button:hover{background-color:#f0f0f0!important}.mapbox-gl-draw_ctrl-draw-btn:hover{background-color:#4a8bc5!important;cursor:pointer!important}.mapbox-gl-draw_trash:hover{background-color:#d13438!important;cursor:pointer!important}.draw-button-label{position:absolute;top:31px;left:50%;transform:translate(-50%);background:#000;color:#fff;padding:3px 5px;border-radius:3px;font-size:10px;white-space:nowrap;font-weight:700;pointer-events:none;display:none}.mapbox-gl-draw_ctrl-draw-btn:hover .draw-button-label{display:block}.drawing-controls{position:absolute;top:10px;left:10px;z-index:1001;background:#f5f7faf2;border:1px solid #d0d6dd;border-radius:6px;padding:8px;box-shadow:0 2px 8px #00000026}.finish-line-button{background:#28a745;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px;min-height:44px;min-width:120px;justify-content:center}.finish-line-button:hover{background:#218838;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.finish-line-button:active{background:#1e7e34;transform:translateY(0);box-shadow:0 1px 2px #0003}.finish-line-button:focus{outline:2px solid #4fc3f7;outline-offset:2px}@media (max-width: 768px){.drawing-controls{top:8px;left:8px;right:auto;transform:none;text-align:left}.finish-line-button{width:auto;min-width:120px;min-height:48px}}.touch-drawing-hint{margin-top:8px;background:#141922f2;border:1px solid #314152;color:#e2f1ff;padding:8px 10px 8px 12px;border-radius:6px;font-size:12px;line-height:1.3;max-width:260px;position:relative;box-shadow:0 4px 10px -2px #00000080;display:flex;gap:8px;align-items:flex-start}.touch-drawing-hint strong{color:#fff}.touch-drawing-hint-text{flex:1}.touch-drawing-hint-dismiss{background:transparent;border:none;color:#93aac2;cursor:pointer;font-size:16px;line-height:1;padding:0 4px}.touch-drawing-hint-dismiss:hover{color:#fff}@media (max-width: 640px){.touch-drawing-hint{max-width:70vw}}.vegetation-zoom-hint{position:absolute;top:10px;right:10px;background:#141922f2;border:1px solid #314152;color:#e2f1ff;padding:10px 12px;border-radius:6px;font-size:13px;line-height:1.4;max-width:300px;box-shadow:0 4px 10px -2px #00000080;z-index:1002;border-left:3px solid #10b981}.vegetation-zoom-hint-content{display:flex;gap:8px;align-items:flex-start}.vegetation-zoom-hint strong{color:#10b981}.vegetation-zoom-hint-dismiss{background:transparent;border:none;color:#93aac2;cursor:pointer;font-size:16px;line-height:1;padding:0 4px;margin-left:auto;flex-shrink:0}.vegetation-zoom-hint-dismiss:hover{color:#fff}.contour-overlay{opacity:1;pointer-events:none}.contour-overlay svg{shape-rendering:geometricPrecision}.contour-overlay path{stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;fill:none;vector-effect:non-scaling-stroke}@media (max-width: 640px){.vegetation-zoom-hint{max-width:80vw;right:8px;top:8px}}.vegetation-config-panel{width:100%;height:100%;overflow-y:auto;color:#f5f7fa;display:flex;flex-direction:column}.vegetation-config-toggle{margin:1rem 0}.vegetation-mapping-form{background:#1e293b;border-radius:8px;padding:1.5rem;margin-top:1rem;border:1px solid #334155}.vegetation-mapping-form .form-group{margin-bottom:1rem}.vegetation-mapping-form label{display:block;margin-bottom:.5rem;font-weight:500}.vegetation-mapping-form input,.vegetation-mapping-form select,.vegetation-mapping-form textarea{width:100%;padding:.75rem;border:1px solid #3a4559;border-radius:4px;background:#1a2332;color:#f5f7fa;margin-top:.25rem}.vegetation-mapping-form .checkbox-group{display:flex;align-items:center}.vegetation-mapping-form .checkbox-group input[type=checkbox]{width:auto;margin-right:.5rem}.vegetation-mapping-form .checkbox-group label{margin:0;display:flex;align-items:center}.vegetation-mapping-form .form-actions{display:flex;gap:1rem;margin-top:1.5rem}.vegetation-mapping-form button{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-weight:500}.vegetation-mapping-form button[type=submit]{background-color:#0d6efd;color:#fff}.vegetation-mapping-form button[type=button]{background-color:#3a4559;color:#f5f7fa}.mappings-container{margin-top:1rem;border-radius:8px;background:#1e293b;border:1px solid #334155;overflow:hidden}.hierarchical-mappings,.flat-mappings{padding:1rem}.formation-group,.class-group{margin-bottom:.75rem}.formation-header,.class-header{display:flex;align-items:center;padding:.75rem 1rem;background:#263244;border-bottom:1px solid #334155;cursor:pointer;transition:background-color .2s}.formation-header:hover,.class-header:hover{background:#2d3a4d}.formation-expand-icon,.class-expand-icon{margin-right:.5rem;width:16px}.formation-title,.class-title{flex:1;display:flex;align-items:center;justify-content:space-between}.formation-classes,.class-types{padding-left:1.5rem;margin-top:.5rem}.type-item{display:flex;align-items:center;padding:.5rem;margin-bottom:.5rem;background:#263244;border-radius:4px}.vegetation-type-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:12px;margin-left:.5rem}.vegetation-type-badge.grassland{background:#8bc34a;color:#1a2332}.vegetation-type-badge.lightshrub{background:#ffc107;color:#1a2332}.vegetation-type-badge.mediumscrub{background:#ff9800;color:#1a2332}.vegetation-type-badge.heavyforest{background:#f44336;color:#fff}.override-badge{font-size:.7rem;background:#9c27b0;color:#fff;padding:.15rem .3rem;border-radius:8px;margin-left:.5rem}.mapping-row{display:flex;align-items:center;padding:.75rem;background:#1a2332;border-radius:4px;margin-bottom:.5rem}.mapping-name{flex:1}.mapping-type{margin:0 1rem;display:flex;align-items:center}.mapping-actions{display:flex;gap:.5rem}.mapping-actions button,.formation-actions button,.class-actions button,.type-actions button{padding:.25rem .5rem;border:none;border-radius:4px;cursor:pointer;font-size:.75rem}.edit-button{background-color:#0d6efd;color:#fff}.delete-button{background-color:#dc3545;color:#fff}.panel-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.search-container{position:relative;flex:1}.search-input{width:100%;padding:.5rem 2rem .5rem .75rem;border:1px solid #3a4559;border-radius:4px;background:#1a2332;color:#f5f7fa}.clear-search{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#6c757d;cursor:pointer}.view-toggles{display:flex;gap:.5rem}.create-button{padding:.5rem 1rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer}.bulk-vegetation-editor{background:#263244;padding:1rem;border-radius:8px;margin-bottom:1rem}.editor-controls{display:flex;align-items:center;gap:1rem}.bulk-type-select{padding:.5rem;background:#1a2332;border:1px solid #3a4559;color:#f5f7fa;border-radius:4px}.apply-button{padding:.5rem 1rem;background-color:#0d6efd;color:#fff;border:none;border-radius:4px;cursor:pointer}.editor-help{margin-top:.5rem;color:#adb5bd}.selection-checkbox{margin-right:.5rem}.selected{outline:2px solid #0d6efd}.no-mappings{padding:2rem;text-align:center;color:#6c757d}.loading{padding:2rem;text-align:center;color:#f5f7fa}.error-message{background:#dc3545;color:#fff;padding:1rem;border-radius:4px;margin-bottom:1rem}.mapping-stats{margin-bottom:1rem;color:#adb5bd}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.panel-description{margin-bottom:1.5rem;color:#e2e8f0}.panel-description h3{margin-top:0;margin-bottom:1rem;color:#fff;font-weight:600}.panel-description p{margin-top:0;line-height:1.5;font-size:.9rem}.help-content{color:#f5f7fa;padding:1rem;background:#1e243366;border-radius:6px;border:1px solid #2a3442;margin:0;height:100%;overflow-y:auto;font-size:.9rem;line-height:1.6}.help-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #2a3442}.help-header h4{margin:0 0 .5rem;color:#ff6b35;font-size:1.1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}.help-subtitle{margin:0;color:#94a3b8;font-size:.85rem;font-style:italic}.help-sections{display:flex;flex-direction:column;gap:1.25rem}.help-section{background:#2d36464d;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:1rem;transition:all .2s ease}.help-section:hover{background:#2d364666;border-color:#ffffff26}.help-section h5{margin:0 0 .75rem;color:#4fc3f7;font-size:.95rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.help-steps ol{margin:0 0 1rem;padding-left:1.25rem;color:#e2e8f0}.help-steps li{margin-bottom:.5rem}.help-steps li strong{color:#f5f7fa;font-weight:600}.help-tip{background:#ff6b351a;border:1px solid rgba(255,107,53,.3);border-left:3px solid #ff6b35;border-radius:4px;padding:.75rem;margin-top:1rem}.help-tip strong{color:#ff6b35;display:block;margin-bottom:.5rem}.help-tip ul{margin:0;padding-left:1.25rem}.help-tip li{margin-bottom:.25rem;color:#e2e8f0}.help-controls{display:flex;flex-direction:column;gap:1rem}.control-group{background:#1e243366;border-radius:4px;padding:.75rem}.control-group h6{margin:0 0 .5rem;color:#4fc3f7;font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.control-group ul{margin:0;padding-left:1.25rem}.control-group li{margin-bottom:.25rem;color:#e2e8f0}.control-group li strong{color:#f5f7fa;font-weight:600}.help-tips{display:flex;flex-direction:column;gap:.5rem}.tip-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:#1e243366;border-radius:4px;transition:background .2s ease}.tip-item:hover{background:#1e243399}.tip-icon{font-size:1.1rem;flex-shrink:0;width:1.5rem;text-align:center}.help-description{color:#e2e8f0;margin:0 0 .75rem}.help-features{margin:0;padding-left:1.25rem;color:#e2e8f0}.help-features li{margin-bottom:.5rem}.help-footer{text-align:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #2a3442}.help-footer-text{margin:0;color:#94a3b8;font-size:.9rem}.help-footer-text strong{color:#4fc3f7;font-weight:600}@media (max-width: 768px){.help-content{padding:.75rem;font-size:.85rem}.help-header h4{font-size:1rem}.help-subtitle{font-size:.8rem}.help-section{padding:.75rem}.help-section h5{font-size:.9rem}.help-controls{gap:.75rem}.control-group{padding:.6rem}.control-group h6{font-size:.8rem}.tip-item{padding:.4rem;gap:.6rem}.tip-icon{font-size:1rem;width:1.25rem}}.bottom-buttons-container{padding:6px 8px}.bottom-buttons-container .buttons-row{display:flex;gap:8px;align-items:center;justify-content:flex-end}.bottom-buttons-container .btn,.bottom-buttons-container .bmc-fallback,.bottom-buttons-container .feature-suggestion-button{padding:4px 8px;font-size:11px;line-height:1;border-radius:6px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:#cbd5e1;box-shadow:none;opacity:.92;transition:background .14s ease,transform .12s ease,opacity .12s ease}.bottom-buttons-container .btn:hover,.bottom-buttons-container .bmc-fallback:hover,.bottom-buttons-container .feature-suggestion-button:hover{background:#ffffff0f;transform:translateY(-1px);opacity:1}.bottom-buttons-container .btn:disabled,.bottom-buttons-container .quick-add:disabled{opacity:.6;cursor:not-allowed}.bottom-buttons-container .bmc-fallback{font-size:11px;padding:3px 7px;border-radius:5px;background:transparent;border:1px solid rgba(255,255,255,.04);color:#bcd0e0}.bottom-buttons-container .feature-suggestion-button{padding:4px 8px;font-size:11px;background:#0d6efd0f;border-color:#0d6efd1a;color:#bcd0e0}@media (max-width: 480px){.bottom-buttons-container .buttons-row{gap:6px}.bottom-buttons-container .btn,.bottom-buttons-container .bmc-fallback,.bottom-buttons-container .feature-suggestion-button{padding:3px 6px;font-size:10px}}
