.kshiti-mobile-shell, .km-map-sheet, .km-map-tools, .km-layer-panel { display: none; }

@media (max-width: 820px) {
  .workspace.km-enabled { min-height: 100dvh; background: #f5faf7; }
  .workspace.km-enabled > header:not(.km-header), .workspace.km-enabled .rail, .workspace.km-enabled #mapView:not(.km-map-active), .workspace.km-enabled .view:not(#mapView), .workspace.km-enabled .mobile-signals-toggle, .workspace.km-enabled .mobile-map-tools, .workspace.km-enabled .mobile-control-sheet, .workspace.km-enabled .mobile-map-hud, .workspace.km-enabled .mobile-farm-sheet, .workspace.km-enabled .kshiti-mobile-header, .workspace.km-enabled .kshiti-mobile-home, .workspace.km-enabled .kshiti-map-bar, .workspace.km-enabled .kshiti-boundary-sheet, .workspace.km-enabled .kshiti-mobile-search-results, .workspace.km-enabled .kshiti-spectral-picker { display: none !important; }
  .workspace.km-enabled > main { padding: 0; }
  .workspace.km-enabled .kshiti-mobile-shell { position: fixed; z-index: 2600; inset: 0; display: flex; flex-direction: column; background: #f5faf7; }
  .workspace.km-enabled .kshiti-mobile-shell.is-map { pointer-events: none; background: transparent; }
  .workspace.km-enabled .kshiti-mobile-shell.is-map .km-header, .workspace.km-enabled .kshiti-mobile-shell.is-map .km-nav, .workspace.km-enabled .kshiti-mobile-shell.is-map .km-status { pointer-events: auto; }
  .workspace.km-enabled .kshiti-mobile-shell.is-map .km-pages { display: none; }
  .km-header { display: flex; align-items: center; justify-content: space-between; min-height: 64px; padding: max(10px, env(safe-area-inset-top)) 18px 10px; border-bottom: 1px solid #dce9e3; background: #fff; }
  .km-brand { display: flex; align-items: center; gap: 8px; color: #123f35; }
  .km-brand img { width: 32px; height: 32px; object-fit: cover; border-radius: 7px; }
  .km-brand strong { font-size: 20px; letter-spacing: 0; }
  .km-brand small { padding: 4px 6px; border-radius: 4px; background: #e9f6ef; color: #08796f; font-size: 9px; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
  .km-header-actions { display: flex; align-items: center; gap: 9px; }
  #kmLanguage { width: 80px; min-height: 36px; border: 1px solid #cfe3da; border-radius: 6px; background: #fff; color: #164a3d; font-size: 12px; font-weight: 750; }
  .km-icon-button { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid #cfe3da; border-radius: 50%; background: #eff9f5; color: #08796f; }
  .km-icon-button svg { width: 18px; height: 18px; }
  .km-pages { flex: 1; min-height: 0; overflow: hidden; }
  .km-page { display: none; height: 100%; overflow-y: auto; overscroll-behavior: contain; padding: 28px 18px calc(94px + env(safe-area-inset-bottom)); }
  .km-page.is-active { display: block; }
  .km-greeting > span, .km-page-title > span, .km-sheet-content > span, .km-card-kicker { display: flex; align-items: center; gap: 6px; color: #08796f; font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
  .km-greeting h1, .km-page-title h1 { margin: 7px 0 7px; color: #173b32; font-size: 30px; line-height: 1.08; letter-spacing: 0; }
  .km-greeting p, .km-page-title p { margin: 0; color: #627a72; font-size: 14px; line-height: 1.5; }
  .km-field-overview, .km-empty-map { width: 100%; margin-top: 25px; padding: 17px; border: 1px solid #d6e8e0; border-radius: 10px; background: #fff; color: #173b32; text-align: left; }
  .km-field-overview { display: grid; grid-template-columns: 72px minmax(0, 1fr) 22px; align-items: center; gap: 13px; }
  .km-field-overview strong { display: block; font-size: 15px; }
  .km-field-overview small { display: block; margin-top: 4px; color: #677f76; font-size: 12px; line-height: 1.35; }
  .km-field-overview > svg { color: #08796f; }
  .km-plot { position: relative; display: grid; height: 72px; place-items: center; overflow: hidden; border-radius: 8px; background: #dcefe5; color: #08796f; }
  .km-plot::before { position: absolute; inset: 0; background: repeating-linear-gradient(135deg, rgba(8,125,112,.09) 0 1px, transparent 1px 12px); content: ""; }
  .km-plot svg { position: relative; z-index: 1; width: 26px; height: 26px; }
  .km-empty-map { padding: 22px; text-align: center; }
  .km-empty-map .km-plot { height: 155px; margin-bottom: 20px; }
  .km-empty-map h2 { margin: 0 0 7px; font-size: 22px; }
  .km-empty-map p { margin: 0 auto 20px; max-width: 280px; color: #647d74; font-size: 14px; line-height: 1.5; }
  .km-primary, .km-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 50px; padding: 0 16px; border: 1px solid #087d70; border-radius: 7px; background: #087d70; color: #fff; font-size: 14px; font-weight: 850; }
  .km-primary svg, .km-secondary svg { width: 18px; height: 18px; }
  .km-next-card { margin-top: 22px; padding: 19px; border: 1px solid #d7e7e1; border-radius: 10px; background: #fff; }
  .km-next-card.is-new { border-color: #94d3be; background: #f4fcf8; }
  .km-next-card h2 { margin: 10px 0 7px; color: #173b32; font-size: 21px; letter-spacing: 0; }
  .km-next-card p { display: -webkit-box; overflow: hidden; margin: 0 0 17px; color: #5f776e; font-size: 13px; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
  .km-next-card .km-primary { width: 100%; }
  .km-section { margin-top: 30px; }
  .km-section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
  .km-section-head h2, .km-benefits h2 { margin: 0; color: #173b32; font-size: 19px; }
  .km-section-head span { color: #72877e; font-size: 11px; }
  .km-signal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 13px; }
  .km-signal-grid article { min-width: 0; padding: 13px 10px; border: 1px solid #dbe9e3; border-radius: 8px; background: #fff; }
  .km-signal-grid svg { width: 19px; height: 19px; color: #08796f; }
  .km-signal-grid span, .km-signal-grid strong { display: block; overflow: hidden; margin-top: 10px; text-overflow: ellipsis; white-space: nowrap; }
  .km-signal-grid span { color: #6d837a; font-size: 10px; }
  .km-signal-grid strong { color: #173b32; font-size: 12px; }
  .km-benefits article, .km-detail-list article { display: flex; align-items: center; gap: 13px; margin-top: 10px; padding: 14px; border: 1px solid #dbe9e3; border-radius: 8px; background: #fff; }
  .km-benefits article > svg, .km-detail-list article > svg { width: 22px; height: 22px; flex: 0 0 22px; color: #08796f; }
  .km-benefits strong, .km-benefits small, .km-detail-list span, .km-detail-list strong { display: block; }
  .km-benefits strong, .km-detail-list strong { color: #173b32; font-size: 14px; }
  .km-benefits small, .km-detail-list span { margin-top: 3px; color: #70867d; font-size: 11px; line-height: 1.4; }
  .km-advisory-hero { margin-top: 25px; padding: 19px; border: 1px solid #b9decf; border-radius: 10px; background: #effaf4; }
  .km-advisory-hero > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #08796f; font-size: 12px; font-weight: 850; text-transform: capitalize; }
  .km-advisory-hero > div b { padding: 5px 8px; border-radius: 99px; background: #d8f1e5; font-size: 10px; }
  .km-advisory-hero h2 { margin: 13px 0 7px; color: #173b32; font-size: 22px; line-height: 1.18; }
  .km-advisory-hero p { margin: 0; color: #49675d; font-size: 14px; line-height: 1.55; }
  .km-detail-list { margin-top: 18px; }
  .km-secondary { width: 100%; margin-top: 18px; border-color: #b9d8ce; background: #fff; color: #135347; }
  .km-more-list { display: grid; gap: 9px; margin-top: 25px; }
  .km-more-list button { display: grid; grid-template-columns: 25px minmax(0, 1fr) 20px; align-items: center; gap: 12px; min-height: 68px; padding: 12px 14px; border: 1px solid #dbe9e3; border-radius: 8px; background: #fff; color: #173b32; text-align: left; }
  .km-more-list button > svg:first-child { color: #08796f; }
  .km-more-list strong, .km-more-list small { display: block; }
  .km-more-list strong { font-size: 14px; }
  .km-more-list small { margin-top: 3px; color: #71867e; font-size: 11px; }
  .km-more-list button > svg:last-child { color: #8aa097; }
  .km-back { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; margin: -6px 0 19px; padding: 0; border: 0; background: transparent; color: #08796f; font-size: 13px; font-weight: 850; }
  .km-back svg { width: 18px; height: 18px; }
  .km-mobile-detail-hero, .km-mobile-report { margin-top: 24px; padding: 22px; border: 1px solid #cce5da; border-radius: 10px; background: #eff9f4; color: #173b32; }
  .km-mobile-detail-hero > svg, .km-mobile-report > svg { width: 28px; height: 28px; color: #08796f; }
  .km-mobile-detail-hero span { display: block; margin-top: 16px; color: #668076; font-size: 12px; }
  .km-mobile-detail-hero strong { display: block; margin-top: 3px; font-size: 30px; letter-spacing: 0; }
  .km-mobile-detail-hero p, .km-mobile-report p { margin: 10px 0 0; color: #59746b; font-size: 13px; line-height: 1.5; }
  .km-history-list { display: grid; gap: 10px; margin-top: 24px; }
  .km-history-list article, .km-history-list > button { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 80px; padding: 15px; border: 1px solid #dbe9e3; border-radius: 8px; background: #fff; color: #173b32; text-align: left; }
  .km-history-list span, .km-history-list strong, .km-history-list small { display: block; }
  .km-history-list span { color: #08796f; font-size: 11px; font-weight: 850; }
  .km-history-list strong { margin-top: 4px; font-size: 14px; }
  .km-history-list small { margin-top: 4px; color: #70867d; font-size: 11px; line-height: 1.35; }
  .km-history-list > article > svg, .km-history-list > button > svg { width: 20px; height: 20px; flex: 0 0 20px; color: #84a096; }
  .km-empty-state { padding: 34px 20px; border: 1px dashed #bfd8ce; border-radius: 10px; background: #fbfefc; color: #173b32; text-align: center; }
  .km-empty-state svg { width: 30px; height: 30px; color: #08796f; }
  .km-empty-state h2 { margin: 13px 0 6px; font-size: 20px; }
  .km-empty-state p { margin: 0; color: #637b72; font-size: 13px; line-height: 1.5; }
  .km-mobile-report h2 { margin: 15px 0 0; font-size: 22px; }
  .km-mobile-report .km-primary { width: 100%; margin-top: 20px; }
  .km-account { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 30px; padding: 17px; border: 1px solid #dbe9e3; border-radius: 8px; background: #fff; }
  .km-account span { color: #71867e; font-size: 10px; font-weight: 850; letter-spacing: .06em; }
  .km-account strong { flex: 1; color: #173b32; font-size: 13px; }
  .km-account button { border: 0; background: transparent; color: #a53f32; font-weight: 800; }
  .km-nav { position: fixed; z-index: 2800; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4, 1fr); min-height: calc(70px + env(safe-area-inset-bottom)); padding: 7px 10px max(7px, env(safe-area-inset-bottom)); border-top: 1px solid #d6e6df; background: #fff; box-shadow: 0 -8px 25px rgba(15,59,49,.08); }
  .km-nav button { display: grid; min-width: 0; place-items: center; gap: 3px; border: 0; border-radius: 7px; background: transparent; color: #6b8379; font-size: 10px; font-weight: 800; }
  .km-nav button svg { width: 20px; height: 20px; }
  .km-nav button.is-active { background: #e8f6f0; color: #08796f; }
  .km-status { position: fixed; z-index: 3000; right: 16px; bottom: calc(83px + env(safe-area-inset-bottom)); left: 16px; display: none; margin: 0; padding: 12px 14px; border: 1px solid #b7ddcf; border-radius: 8px; background: #fff; box-shadow: 0 9px 28px rgba(10,50,41,.18); color: #17483d; font-size: 13px; font-weight: 750; }
  .km-status.is-visible { display: block; }
  .workspace.km-enabled #mapView.km-map-active { position: fixed; z-index: 2550; top: 64px; right: 0; bottom: calc(70px + env(safe-area-inset-bottom)); left: 0; display: block !important; padding: 0; }
  .workspace.km-enabled #mapView.km-map-active .map-layout, .workspace.km-enabled #mapView.km-map-active .map-frame, .workspace.km-enabled #mapView.km-map-active #map { height: 100%; min-height: 0; }
  .workspace.km-enabled #mapView.km-map-active .map-layout { display: block; }
  .workspace.km-enabled #mapView.km-map-active .map-frame { border: 0; border-radius: 0; }
  .workspace.km-enabled #mapView.km-map-active .leaflet-bottom, .workspace.km-enabled #mapView.km-map-active .leaflet-top { z-index: 200; }
  .workspace.km-enabled #mapView.km-map-active .leaflet-control-zoom { display: none; }
  .km-map-tools { position: absolute; z-index: 800; top: 14px; right: 14px; left: 14px; display: grid; grid-template-columns: minmax(0, 1fr) 48px; gap: 8px; }
  .km-map-tools label { display: flex; align-items: center; flex: 1; min-width: 0; gap: 9px; min-height: 48px; padding: 0 13px; border: 1px solid #d7e5df; border-radius: 8px; background: rgba(255,255,255,.97); box-shadow: 0 6px 18px rgba(12,54,44,.14); color: #08796f; }
  .km-map-tools label svg { width: 18px; height: 18px; flex: 0 0 18px; }
  .km-map-tools input { width: 100%; border: 0; outline: 0; background: transparent; color: #23493f; font-size: 13px; }
  .km-map-tools button { display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid #d7e5df; border-radius: 8px; background: #fff; box-shadow: 0 6px 18px rgba(12,54,44,.14); color: #08796f; }
  .km-basemap-toggle { grid-column: 1 / -1; display: inline-grid; grid-template-columns: 1fr 1fr; justify-self: start; overflow: hidden; border: 1px solid #d7e5df; border-radius: 7px; background: rgba(255,255,255,.98); box-shadow: 0 5px 16px rgba(12,54,44,.12); }
  .km-basemap-toggle button { width: auto; height: 34px; min-width: 68px; border: 0; border-radius: 0; box-shadow: none; background: transparent; color: #4e6e64; font-size: 11px; font-weight: 850; }
  .km-basemap-toggle button.is-active { background: #08796f; color: #fff; }
  .km-map-sheet { position: absolute; z-index: 800; right: 14px; bottom: 14px; left: 14px; display: block; max-height: min(54dvh, 430px); overflow-y: auto; padding: 13px 16px 16px; border: 1px solid #dbe8e3; border-radius: 11px; background: rgba(255,255,255,.98); box-shadow: 0 12px 32px rgba(10,54,43,.2); }
  .km-sheet-grip { width: 36px; height: 4px; margin: 0 auto 12px; border-radius: 99px; background: #c8dad2; }
  .km-sheet-content h2 { margin: 5px 0 7px; color: #173b32; font-size: 22px; letter-spacing: 0; }
  .km-sheet-content > p { margin: 0; color: #627a72; font-size: 13px; line-height: 1.45; }
  .km-sheet-content label { display: grid; gap: 5px; margin-top: 11px; color: #355d52; font-size: 11px; font-weight: 800; }
  .km-sheet-content select { min-height: 45px; width: 100%; padding: 0 11px; border: 1px solid #cfe0da; border-radius: 7px; background: #fff; color: #174438; font: inherit; }
  .km-profile-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 14px; }
  .km-profile-grid label { min-width: 0; margin-top: 0; }
  .km-profile-grid label:first-child, .km-profile-grid label:nth-child(6), .km-profile-grid label:nth-child(7), .km-profile-grid label:nth-child(8), .km-profile-grid label:nth-child(9), .km-profile-grid label:nth-child(10) { grid-column: 1 / -1; }
  .km-profile-grid input { min-width: 0; min-height: 45px; width: 100%; padding: 0 11px; border: 1px solid #cfe0da; border-radius: 7px; background: #fff; color: #174438; font: inherit; }
  .km-profile-note { margin: 12px 0 0; color: #6c8279; font-size: 11px; line-height: 1.4; }
  .km-sheet-actions { display: grid; grid-template-columns: 1fr 1.3fr; gap: 9px; margin-top: 16px; }
  .km-sheet-actions > button { min-height: 49px; border: 1px solid #bed9cf; border-radius: 7px; background: #fff; color: #145246; font-size: 13px; font-weight: 850; }
  .km-sheet-actions .km-primary { width: 100%; }
  .km-loading { display: flex; align-items: center; gap: 9px; margin-top: 18px; color: #08796f; font-size: 13px; font-weight: 800; }
  .km-loading svg { width: 20px; height: 20px; animation: km-spin 1s linear infinite; }
  @keyframes km-spin { to { transform: rotate(360deg); } }
  .km-layer-panel { position: absolute; z-index: 900; top: 116px; right: 14px; left: 14px; display: none; padding: 16px; border: 1px solid #d7e5df; border-radius: 10px; background: #fff; box-shadow: 0 12px 30px rgba(12,54,44,.22); }
  .km-layer-panel.is-visible { display: block; }
  .km-layer-panel > div { display: flex; align-items: center; justify-content: space-between; }
  .km-layer-panel > div span { color: #08796f; font-size: 10px; font-weight: 850; letter-spacing: .08em; }
  .km-layer-panel > div button { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid #d7e5df; border-radius: 6px; background: #fff; color: #174438; }
  .km-layer-panel h2 { margin: 4px 0 4px; color: #173b32; font-size: 20px; }
  .km-layer-panel p { margin: 0 0 13px; color: #647c73; font-size: 12px; }
  .km-layer-panel section { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
  .km-layer-panel section button { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 8px; border: 1px solid #dceae5; border-radius: 7px; background: #f9fcfb; color: #174438; font-size: 12px; font-weight: 800; text-align: left; }
  .km-layer-panel section svg { width: 17px; height: 17px; color: #08796f; }
}
