:root{
  --bg:#0b0c10; --ink:#111; --muted:#6b7280; --card:#fff; --border:#e5e7eb;
  --col-gap:16px; --row-gap:16px; --radius:14px;
  --sidebar-w: 33.333%; /* 4 of 12 */
}
*{box-sizing:border-box}
html,body,#app{height:100%;margin:0}
body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,"Apple Color Emoji","Segoe UI Emoji";background:#f8fafc;color:#0f172a}
.wrap{display:grid; grid-template-columns: 1fr 2fr; gap:var(--col-gap); height:100%; padding:16px;}
.panel{background:var(--card); border:1px solid var(--border); border-radius:var(--radius); display:flex; flex-direction:column;}
.panel .hd{padding:12px 14px; border-bottom:1px solid var(--border); display:flex; align-items:center; gap:10px}
.panel .hd h2{font-size:16px; font-weight:700; margin:0}
.panel .bd{flex:1; min-height:0;}
.list{list-style:none; padding:0; margin:0;}
.status-message, .list li{padding:10px 14px; border-bottom:1px solid var(--border); cursor:pointer; line-height:1.3}
.list li:hover{background:#f3f4f6}
.list .empty{padding:18px 14px; color:var(--muted)}
.toolbar{padding:10px 14px; display:flex; gap:8px; border-bottom:none}
.toolbar #searchTextFieldContainer { border:1px solid var(--border); }
.toolbar input{flex:1; padding:10px 12px; border:1px solid var(--border); border-radius:10px}
.pill{font-size:12px; color:#64748b}
.map{height:100%; width:100%}
.footer{padding:8px 12px; border-top:1px solid var(--border); font-size:12px; color:#64748b}
.badge{display:inline-flex; align-items:center; gap:6px; background:#eef2ff; color:#3730a3; padding:6px 8px; border-radius:999px; font-size:12px}
.kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace; background:#f3f4f6; padding:1px 6px; border-radius:6px; border:1px solid var(--border)}
.description-panel{padding:12px 14px; border-top:1px solid var(--border); background:#f9fafb; font-size:14px; line-height:1.45}
.description-panel hr{ margin: 15px 0;}
.description-header{display:flex; align-items:center; justify-content:space-between; margin-bottom:8px}
.description-label{font-size:12px; color:#64748b; text-transform:uppercase; letter-spacing:0.04em}
.description-hide{font-size:12px; color:#2563eb; text-decoration:none}
.description-hide:hover{text-decoration:underline}
.description-title{font-weight:600; margin-bottom:6px; color:#0f172a}
.description-body{color:#475569; white-space:pre-wrap}
@media(max-width: 1024px){ .wrap{grid-template-columns: 1fr; grid-template-rows: 45% 55%;} }
.interactive-map #searchTextField {background: white;}

.simplebar-scrollbar:before { background-color: #619147; }
.simplebar-scrollbar { width: 6px !important; min-width: 6px; max-width: 6px; }
.simplebar-track { background: #E7EAE3; width: 6px !important;}
.simplebar-scrollbar:before { border-radius: 3px; }
.simplebar-scrollbar:before { top: 0px !important;bottom: 0px !important;left: 0px !important;right: 0px !important;}
@media (hover: none) and (pointer: coarse) { .simplebar-scrollbar { width: 6px !important; }}
