/* GeoIQ v2 design system (Nature and Biodiversity redesign).
   Every class is prefixed gq- so nothing here touches Bootstrap/Mantine or the other modules.
   Generated from the clickable prototype's stylesheet, then extended for Dash/Leaflet below. */
.gq-app,.gq-app *{box-sizing:border-box}
.gq-app,.gq-app{margin:0;background:#f3f4f6}
.gq-app{font-family:"Aktiv Grotesk","DM Sans","Helvetica Neue",Arial,sans-serif;color:#101828}
.gq-app button,.gq-app input,.gq-app select{font-family:inherit}
.gq-app button{cursor:pointer}
.gq-app button:focus-visible,.gq-app a:focus-visible,.gq-app input:focus-visible,.gq-app select:focus-visible{outline:2px solid #2563eb;outline-offset:2px}
.gq-hdr{position:sticky;top:0;z-index:30;min-height:64px;background:#ffffff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:flex-end;padding:0 24px}
.gq-hdr .gq-who{color:#101828;font-size:16px;font-weight:500}
.gq-layout{display:flex;align-items:stretch;min-height:100vh}
.gq-rightcol{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}
.gq-side{flex:0 0 280px;background:#1B202D;transition:flex-basis .25s ease;position:relative;z-index:35}
.gq-side.gq-collapsed{flex-basis:80px}
.gq-side-in{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:14px 12px 10px}
.gq-logo{padding:0 0 14px 8px;display:flex;align-items:center;min-height:64px}
.gq-side.gq-collapsed .gq-logo{padding:0;justify-content:center}
.gq-cats{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding-top:6px;scrollbar-width:none}
.gq-cats::-webkit-scrollbar{display:none}
.gq-cat{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:8px}
.gq-cathead{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;background:transparent;padding:10px 10px 8px 12px;font-size:15px;font-weight:600;color:#ffffff;text-align:left;border-radius:6px}
.gq-cathead:hover{background:rgba(255,255,255,.06)}
.gq-rail-collapse{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#93989F;font-size:14px;font-weight:500;width:100%;margin-top:8px}
.gq-rail-collapse:hover{background:rgba(255,255,255,.08);color:#fff}
.gq-side.gq-collapsed .gq-rail-collapse{justify-content:center;padding:0;width:44px;margin:8px auto 0}
.gq-rail-footer{position:relative;margin-top:6px;border-top:1px solid rgba(255,255,255,.1);padding-top:8px}
.gq-userbtn{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;border-radius:8px;padding:6px 8px;color:#fff;text-align:left}
.gq-userbtn:hover{background:rgba(255,255,255,.08)}
.gq-side.gq-collapsed .gq-userbtn{justify-content:center;padding:6px 0}
.gq-avatar{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;flex:0 0 32px;color:#fff}
.gq-userbtn .gq-nm{flex:1;font-size:14px;font-weight:500}
.gq-umenu{position:absolute;left:calc(100% + 10px);bottom:0;min-width:200px;background:#fff;border-radius:10px;box-shadow:0 8px 32px rgba(0,0,0,.16),0 2px 8px rgba(0,0,0,.08);padding:6px;z-index:60}
.gq-umenu button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;border-radius:6px;padding:0 12px;min-height:40px;font-size:14px;color:#212121;text-align:left}
.gq-umenu button:hover{background:#f3f4f6}
.gq-umenu button.gq-out{color:#c2410c}
@media (max-width:700px){.gq-layout{flex-direction:column}
.gq-side,.gq-side.gq-collapsed{flex-basis:auto}
.gq-side-in{position:static;height:auto}
.gq-umenu{left:auto;right:0;bottom:calc(100% + 8px)}}
.gq-navbtn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;border-radius:6px;padding:0 12px;min-height:44px;background:transparent;color:#93989F;font-size:15px}
.gq-navbtn:hover:not([disabled]){background:rgba(255,255,255,.08);color:#fff}
.gq-navbtn .gq-dot{width:5px;height:5px;border-radius:50%;background:#5d6370;flex:0 0 5px}
.gq-navbtn[aria-current="page"]{background:#262e40;color:#fff;font-weight:500}
.gq-navbtn[aria-current="page"] .gq-dot{background:#fff}
.gq-navbtn[disabled]{color:#6b7280;cursor:not-allowed}
.gq-navbtn[disabled] .gq-dot{background:#4b5160}
.gq-main{flex:999 1 560px;min-width:0;padding:24px}
.gq-seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#e9ecef;border-radius:10px;padding:0;margin-bottom:16px;overflow:hidden}
.gq-seg button{background:transparent;color:#343a40;border:0;border-radius:10px;font-weight:500;font-size:16px;min-height:52px}
.gq-seg button[aria-checked="true"]{background:#1B202D;color:#fff}
.gq-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px}
.gq-di{padding:24px;display:flex;flex-wrap:wrap;gap:32px}
.gq-di .gq-col{flex:1 1 380px;min-width:0;display:flex;flex-direction:column}
.gq-di h1{margin:0 0 16px;font-size:24px;font-weight:500}
.gq-di h2{margin:28px 0 12px;font-size:18px;font-weight:400}
.gq-di h2.gq-first{margin-top:0;display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.gq-lbl{font-size:15px;margin-bottom:6px}
.gq-inp{height:40px;padding:0 12px;border:1px solid #ced4da;border-radius:6px;font-size:15px;color:#101828;background:#fff;width:100%}
.gq-btn-dark{height:44px;background:#1B202D;color:#fff;border:0;border-radius:6px;font-weight:600;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px}
.gq-btn-dark[disabled]{background:#adb5bd;cursor:not-allowed}
.gq-chipbtn{border:1px solid #dfe3ec;background:#fff;color:#1b202d;border-radius:16px;padding:0 12px;min-height:32px;font-size:13px}
.gq-mapcard{flex:1 1 380px;min-width:0;border:1px solid #e5e7eb;border-radius:10px;padding:16px;display:flex;flex-direction:column}
.gq-map{position:relative;flex:1;min-height:440px;border-radius:4px;overflow:hidden;background:#dfe9f2}
.gq-map > svg{display:block;width:100%;height:100%}   /* the prototype's placeholder map only, never Leaflet's own drawing layer */
.gq-zoom{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;background:#fff;border:2px solid rgba(0,0,0,.2);border-radius:4px}
.gq-zoom button{width:32px;height:32px;border:0;background:#fff;font-size:18px;font-weight:700}
.gq-zoom button+button{border-top:1px solid #ccc}
.gq-mapnote{position:absolute;left:10px;bottom:8px;font-size:11px;color:#4a5565;background:rgba(255,255,255,.85);padding:2px 6px;border-radius:3px}
.gq-attr{position:absolute;right:0;bottom:0;font-size:11px;color:#333;background:rgba(255,255,255,.85);padding:0 5px}
.gq-results{display:flex;flex-direction:column;gap:24px;margin-top:24px;scroll-margin-top:80px}
.gq-sum{padding:20px 24px}
.gq-sum .gq-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.gq-sum h2{margin:0;font-size:24px;font-weight:400}
.gq-tag{background:#fef9c3;color:#713f12;border-radius:4px;padding:2px 10px;font-size:13px;font-weight:500}
.gq-ghost{min-height:38px;padding:0 16px;border:1px solid #dfe3ec;border-radius:7px;background:#fff;color:#1b202d;font-weight:500;font-size:14px}
.gq-sum{border:2px solid #0066CC}
.gq-sumgrid{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;margin-top:16px}
.gq-sumgrid>div{min-width:120px}
.gq-k{font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#4a5565}
.gq-v{font-size:16px;font-weight:500;margin-top:4px}
.gq-sec{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px}
.gq-sechead{display:flex;align-items:center;justify-content:space-between;gap:16px}
.gq-sechead h2{margin:0;font-size:24px;font-weight:400}
.gq-iconbtn{width:44px;height:44px;border:0;background:transparent;border-radius:8px;display:flex;align-items:center;justify-content:center}
.gq-iconbtn:hover{background:#f3f4f6}
.gq-chev{transition:transform .2s ease}
.gq-parts{display:flex;flex-direction:column;gap:20px;margin-top:16px}
.gq-lm{background:#f4f8ff;border:1px solid #d8e6fb;border-radius:10px;padding:14px 18px 13px}
.gq-lm.gq-open{padding-bottom:16px}
.gq-lmtop{display:flex;align-items:center;gap:16px}
.gq-lmhead{display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:0;min-height:32px;font-weight:700;font-size:17px;letter-spacing:-.01em;color:#101828;text-align:left}
.gq-lmhead:hover{color:#2a64c5}
.gq-dd{margin-left:auto;position:relative}
.gq-ddbtn{display:flex;align-items:center;gap:8px;height:32px;padding:0 12px;border:1px solid #e4e5e7;background:#fff;border-radius:8px;font-size:13px;color:#101828}
.gq-ddmenu{position:absolute;right:0;top:38px;z-index:5;min-width:220px;padding:6px;background:#fff;border:1px solid #e4e5e7;border-radius:8px;box-shadow:0 8px 24px rgba(16,24,40,.12)}
.gq-ddgrp{font-size:11px;font-weight:700;letter-spacing:.06em;color:#6b7280;text-transform:uppercase;padding:8px 10px 4px}
.gq-dditem{display:block;width:100%;text-align:left;border:0;border-radius:6px;background:transparent;padding:0 10px;min-height:34px;font-size:13px;color:#333}
.gq-dditem:hover,.gq-dditem.gq-sel{background:#e9ecef}
.gq-lmsub{display:flex;align-items:center;gap:9px;margin-top:14px}
.gq-lmsub span{width:3px;height:15px;border-radius:2px;background:#1942a1}
.gq-lmsub h3{margin:0;font-size:14px;font-weight:700}
.gq-lmbody{margin-top:9px;max-height:160px;overflow-y:auto;padding-right:14px;font-size:14px;line-height:1.6;color:#33373f}
.gq-lmbody p{margin:0 0 10px}
.gq-lmbody b{font-weight:700;color:#101828}
.gq-subhead{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.gq-subhead h3{margin:0;font-size:18px;font-weight:400}
.gq-subhead label{display:flex;align-items:center;gap:6px;font-size:13px;color:#4a5565}
.gq-subhead select{height:34px;padding:0 8px;border:1px solid #dfe3ec;border-radius:7px;background:#fff;font-size:13px;color:#1b202d}
.gq-subhead .gq-note{font-size:12px;color:#6b7280}
.gq-subhead .gq-iconbtn{margin-left:auto}
/* the whole header toggles its section (geoiq_shell.js passes the click to the chevron) */
.gq-sechead:has(> .gq-iconbtn),.gq-subhead:has(> .gq-iconbtn){cursor:pointer;border-radius:8px;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px;transition:background .15s}
.gq-sechead:has(> .gq-iconbtn):hover,.gq-subhead:has(> .gq-iconbtn):hover{background:#f7f9fc}
.gq-sechead:has(> .gq-iconbtn) .gq-iconbtn,.gq-subhead:has(> .gq-iconbtn) .gq-iconbtn{background:transparent}
/* Remove pin (Single Asset map) */
.gq-pinclear{position:absolute;top:10px;right:10px;z-index:1000;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;
  border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#1b202d;font-size:13px;font-weight:500;box-shadow:0 1px 3px rgba(16,24,40,.12);cursor:pointer}
.gq-pinclear:hover{background:#f3f4f6}
/* map notes sit above the map tiles and never catch clicks */
.gq-map .gq-mapnote,.gq-mmap .gq-mapnote{z-index:1000;pointer-events:none}
/* Each map is its own stacking layer, so Leaflet's tiles and controls (z-index 400-1000) and the notes
   above them stay under the sticky top bar when the page scrolls. */
.gq-app .leaflet-container,.gq-map,.gq-mmap{isolation:isolate}
.gq-mmap.gq-pinnable .leaflet-container{cursor:crosshair}
.gq-mmap.gq-pinnable .leaflet-marker-icon,.gq-mmap.gq-pinnable .leaflet-interactive{cursor:pointer}
.gq-vmsg .gq-undo{margin-left:6px;min-height:0;font-size:14px;font-weight:600}
.gq-subhead label,.gq-subhead select{cursor:auto}
.gq-grid{display:grid;gap:16px}
.gq-mc{display:flex;flex-direction:column;gap:14px;min-height:132px;padding:16px 20px;background:#fff;border:1px solid #bfc7d9;border-radius:10px}
.gq-mc:hover{box-shadow:0 4px 8px rgba(0,0,0,.1)}
.gq-mchead{display:flex;align-items:center;gap:12px;min-height:40px}
.gq-tile{flex:0 0 40px;width:40px;height:40px;border-radius:4px;display:flex;align-items:center;justify-content:center}
.gq-mclabel{font-size:14px;line-height:18px;font-weight:500;color:#4a5565;text-transform:uppercase}
.gq-mcrow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-top:auto}
.gq-metric{display:flex;align-items:center;gap:6px;font-size:18px;color:#000;white-space:nowrap}
.gq-metric b{font-weight:600}
.gq-info{display:inline-flex;color:#4a5565;opacity:.8;cursor:help}
.gq-badge{flex-shrink:0;min-width:44px;padding:2px 16px;border-radius:4px;font-size:14px;line-height:22px;font-weight:500;text-align:center;white-space:nowrap}
.gq-big{font-size:24px;line-height:30px;font-weight:600}
.gq-vd{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;min-height:28px;font-weight:500;font-size:15px;color:#0066cc}
.gq-vd:hover{text-decoration:underline}
.gq-overlay{position:fixed;inset:0;z-index:50;display:flex;justify-content:flex-end}
.gq-scrim{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(16,24,40,.45)}
.gq-drawer{position:relative;width:min(680px,100%);height:100%;background:#fff;box-shadow:-8px 0 24px rgba(16,24,40,.16);display:flex;flex-direction:column}
.gq-dhead{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:flex-start;gap:16px}
.gq-dhead h2{margin:4px 0 6px;font-size:22px;font-weight:500}
.gq-dclose{flex:0 0 44px;width:44px;height:44px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center}
.gq-dbody{flex:1;overflow-y:auto}
.gq-blk{padding:18px 24px;border-bottom:1px solid #eef0f4}
.gq-blk h3{margin:0 0 10px;font-size:15px;font-weight:600}
.gq-res{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px}
.gq-res .gq-num{font-size:32px;line-height:38px;font-weight:600}
.gq-res .gq-unit{font-size:15px;color:#4a5565}
.gq-segs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-top:14px}
.gq-segs div{border-radius:4px;padding:6px 2px;font-size:12px;font-weight:500;text-align:center}
.gq-cap{margin:10px 0 0;font-size:13px;color:#4a5565}
.gq-txt{margin:0;font-size:14px;line-height:1.6;color:#33373f}
.gq-ph{margin:0;font-size:13px;line-height:1.5;color:#4a5565;border:1px dashed #bfc7d9;border-radius:8px;padding:10px 12px;background:#fafbfc}
.gq-src{margin:0;font-size:13px;color:#4a5565}
.gq-src b{color:#101828}
.gq-kvrow{display:flex;flex-wrap:wrap;gap:4px 16px;padding:8px 0;border-bottom:1px solid #f1f3f5;font-size:14px}
.gq-kvrow .gq-kk{flex:1 1 200px;color:#4a5565}
.gq-kvrow .gq-vv{flex:1 1 220px;font-weight:500}
.gq-bar{margin-bottom:10px}
.gq-bar .gq-lab{display:flex;justify-content:space-between;gap:12px;font-size:14px;margin-bottom:4px}
.gq-bar .gq-tcat{color:#6a7282;font-weight:400}
.gq-bar .gq-trk{height:8px;border-radius:4px;background:#eef2f7}
.gq-bar .gq-fil{height:8px;border-radius:4px;background:#2563eb}
.gq-tbl{overflow-x:auto}
.gq-tbl table{width:100%;border-collapse:collapse;font-size:13px}
.gq-tbl th{text-align:left;padding:8px 10px;border-bottom:1px solid #e5e7eb;color:#4a5565;font-weight:500;white-space:nowrap}
.gq-tbl td{padding:8px 10px;border-bottom:1px solid #f1f3f5;white-space:nowrap}
.gq-tbl .gq-c{display:inline-block;border-radius:4px;padding:2px 8px;font-weight:500}
.gq-empty{margin:0;font-size:14px;line-height:1.55;color:#4a5565;background:#f8f9fb;border-radius:8px;padding:12px 14px}
.gq-items{position:relative;display:flex;flex-direction:column;gap:12px}
.gq-items.gq-capped{overflow-y:auto;padding-right:6px;border-bottom:1px solid #e5e7eb}
.gq-item{border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px}
.gq-item .gq-it{font-size:15px;font-weight:600}
.gq-item.gq-compact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;padding:10px 14px}
.gq-item.gq-compact .gq-meta{font-size:13px;color:#4a5565;margin-top:3px}
.gq-item.gq-compact .gq-chips{display:inline-flex;margin:0 0 0 8px;vertical-align:middle}
.gq-item.gq-compact .gq-ilink{margin-top:0;white-space:nowrap}
.gq-items.gq-compact-list{gap:8px}
.gq-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.gq-chip{border-radius:4px;padding:2px 10px;font-size:12px;font-weight:500}
.gq-irow{display:flex;flex-wrap:wrap;gap:2px 16px;padding:6px 0;border-bottom:1px solid #f1f3f5;font-size:13px}
.gq-irow .gq-kk{flex:1 1 170px;color:#4a5565}
.gq-irow .gq-vv{flex:1 1 220px}
.gq-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:6px 16px}
.gq-act{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:3px 0}
.gq-act span:last-child{border-radius:4px;padding:1px 8px;font-size:12px;font-weight:500;white-space:nowrap}
.gq-ilink{display:inline-block;margin-top:10px;font-size:13px;font-weight:500;color:#0066cc;text-decoration:none}
.gq-plain{padding:32px}
.gq-plain h1{margin:0 0 8px;font-size:24px;font-weight:500}
.gq-plain p{margin:0;font-size:15px;color:#4a5565}
.gq-spin{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:gq-sp 0.8s linear infinite}
@keyframes gq-sp{to{transform:rotate(360deg)}}
@media (max-width:640px){.gq-hdr nav{margin-left:0}
.gq-map{height:360px}
.gq-main{padding:16px}
.gq-di{padding:16px}
.gq-sec{padding:16px}}
.gq-btn-light{height:44px;background:#eaf0fb;color:#0043a7;border:1px solid #d8e6fb;border-radius:6px;font-weight:600;font-size:15px}
.gq-btn-light:hover{background:#dbe6f9}
.gq-app select.gq-inp,.gq-mode-sel,.gq-subhead select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%234a5565' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px;padding-right:38px}
.gq-app select:disabled{opacity:.6;cursor:not-allowed}
.gq-mode-sel{height:34px;padding:0 38px 0 10px;border:1px solid #ced4da;border-radius:6px;background-color:#fff;font-size:16px;color:#101828;margin:0 2px}
.gq-grid3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.gq-grid3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}}
.gq-drop{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;border:1.5px dashed #bfc7d9;border-radius:8px;padding:22px 16px;text-align:center;font-size:15px;color:#101828;cursor:pointer;background:#fafbfc}
.gq-drop:hover,.gq-drop.gq-over{border-color:#0066cc;background:#f4f8ff}
.gq-drop:focus-within{outline:2px solid #2563eb;outline-offset:2px}
.gq-dsub{font-size:13px;color:#4a5565}
.gq-vh{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.gq-linkbtn{border:0;background:transparent;color:#0066cc;font-size:13px;font-weight:500;padding:0 4px;min-height:32px}
.gq-linkbtn:hover{text-decoration:underline}
.gq-ferr{margin:8px 0 0;font-size:14px;color:#b42318}
.gq-shapes{margin-top:14px;border:1px solid #e5e7eb;border-radius:8px}
.gq-shtop{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid #eef0f4;font-size:14px}
.gq-shrow{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #f1f3f5}
.gq-shrow:last-of-type{border-bottom:0}
.gq-swatch{width:10px;height:10px;border-radius:2px;flex:0 0 10px}
.gq-shname{flex:1;min-width:0;font-size:14px}
.gq-shtype{font-size:12px;color:#4a5565}
/* ---- multi-asset: input ---- */
.gq-mi{padding:24px;display:flex;flex-direction:column;gap:16px}
.gq-mihead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.gq-mihead>div:first-child{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px}
.gq-mihead h1{margin:0;font-size:24px;font-weight:500}
.gq-maxn{font-size:15px;color:#4a5565}
.gq-mibtns{display:flex;flex-wrap:wrap;gap:10px}
.gq-mbtn{height:40px;padding:0 16px;font-size:14px;cursor:pointer;position:relative}
.gq-mbtn:focus-within{outline:2px solid #2563eb;outline-offset:2px}
.gq-btn-outline{height:40px;background:#fff;color:#1B202D;border:1px solid #1B202D;border-radius:6px;font-weight:600;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px}
.gq-btn-outline:hover:not([disabled]){background:#f3f4f6}
.gq-btn-outline[disabled]{color:#9ca3af;border-color:#d1d5db;cursor:not-allowed}
.gq-mmap{position:relative;height:clamp(240px,34vw,440px);border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#eef2e6}
.gq-mmap>svg{display:block;width:100%;height:100%}
.gq-mtw{overflow:auto;max-height:420px;border:1px solid #e5e7eb;border-radius:8px}
.gq-mtable{width:100%;border-collapse:collapse;font-size:14px;min-width:820px}
.gq-mtable th{position:sticky;top:0;z-index:1;background:#e5f0fa;text-align:left;font-weight:600;color:#1b202d;padding:10px 8px;border-bottom:1px solid #d6e2ef;white-space:nowrap}
.gq-mtable td{padding:4px 6px;border-bottom:1px solid #f1f3f5;vertical-align:middle}
.gq-mtable td.gq-rn{color:#4a5565;text-align:center;font-size:13px}
.gq-mtable td.gq-bad .gq-ci{border-color:#d92d20;background:#fef3f2}
.gq-ci{width:100%;height:34px;border:1px solid transparent;border-radius:5px;padding:0 8px;font-size:14px;background:transparent;color:#101828}
.gq-ci:hover{border-color:#dfe3ec}
.gq-ci:focus{border-color:#0066cc;background:#fff}
.gq-rowdel{width:32px;height:32px;border:0;background:transparent;border-radius:6px;color:#6b7280;display:flex;align-items:center;justify-content:center}
.gq-rowdel:hover{background:#fef3f2;color:#b42318}
.gq-mempty{text-align:center;padding:28px 12px!important;color:#4a5565;font-size:14px}
.gq-mfoot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.gq-mbt{display:flex;flex-wrap:wrap;gap:10px}
.gq-mbtn2{height:44px;padding:0 18px}
.gq-mbtn2.gq-wide{min-width:180px}
.gq-vmsg{border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.5}
.gq-vmsg ul{margin:6px 0 0;padding-left:20px}
.gq-vmsg.gq-ok{background:#ecfdf3;color:#05603a;border:1px solid #abefc6}
.gq-vmsg.gq-err{background:#fef3f2;color:#912018;border:1px solid #fecdca}
.gq-vmsg.gq-info{background:#f4f8ff;color:#1e3a8a;border:1px solid #d8e6fb}
/* ---- multi-asset: report views ---- */
.gq-rp{display:flex;flex-direction:column;gap:20px}
.gq-scenrow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.gq-scenrow label{display:flex;align-items:center;gap:8px;font-size:14px;color:#4a5565}
.gq-scenrow .gq-note{font-size:12px;color:#6b7280}
.gq-rsum{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.gq-rtotal{font-size:18px;color:#101828}
.gq-rtotal b{font-weight:600}
.gq-rfilters{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.gq-pillw{position:relative}
.gq-pill{white-space:nowrap}
.gq-ppanel{position:absolute;right:0;top:42px;z-index:20;width:280px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e4e5e7;border-radius:10px;box-shadow:0 8px 24px rgba(16,24,40,.14);padding:8px}
.gq-rfilters .gq-pillw:first-child .gq-ppanel{right:auto;left:0}
.gq-pact{display:flex;align-items:center;gap:2px;border-bottom:1px solid #eef0f4;padding-bottom:6px;margin-bottom:6px}
.gq-pact .gq-sp{flex:1}
.gq-pitem{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:7px 6px;line-height:1.3;border:0;border-radius:6px;background:transparent;font-size:14px;color:#1b202d;text-align:left}
.gq-pitem:hover:not([disabled]){background:#f3f4f6}
.gq-pitem[disabled]{color:#9ca3af;cursor:not-allowed}
.gq-pall{width:auto;font-weight:500}
.gq-pbox{flex:0 0 16px;width:16px;height:16px;border:1.5px solid #9ca3af;border-radius:3px;display:flex;align-items:center;justify-content:center;background:#fff}
.gq-pbox.gq-on,.gq-pbox.gq-mid{background:#0066cc;border-color:#0066cc}
.gq-pbox .gq-dash{width:8px;height:2px;background:#fff;border-radius:1px}
.gq-psearch{height:34px;font-size:14px;margin-bottom:6px}
.gq-plist{max-height:260px;overflow-y:auto}
.gq-hpage{font-size:15px;font-weight:600;color:#101828}
.gq-hpage span{font-weight:400;color:#6b7280}
.gq-hero{display:flex;align-items:center;gap:10px}
.gq-hgrid{flex:1;min-width:0;display:grid;gap:16px}
.gq-harrow{flex:0 0 36px;width:36px;height:36px;border-radius:50%;border:1px solid #dfe3ec;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px rgba(16,24,40,.08)}
.gq-harrow:hover{border-color:#0066cc}
.gq-hcard{position:relative;display:flex;flex-direction:column;gap:14px;min-height:128px;padding:16px 18px;background:#fff;border:1px solid #bfc7d9;border-radius:10px;cursor:pointer;text-align:left}
.gq-hcard:hover{box-shadow:0 4px 8px rgba(0,0,0,.1)}
.gq-hcard.gq-sel{border:2px solid #0066cc;padding:15px 17px;background:#f7fbff}
.gq-hcard .gq-mchead{gap:10px}
.gq-hcard .gq-mclabel{flex:1;min-width:0}
.gq-hcard .gq-mcrow{flex-wrap:nowrap}
.gq-hcard .gq-badge{padding:2px 10px}
.gq-hcard .gq-mclabel{overflow-wrap:break-word}
.gq-hgrid.gq-c5{gap:12px}
.gq-hgrid.gq-c5 .gq-hcard{padding:14px}
.gq-hgrid.gq-c5 .gq-hcard.gq-sel{padding:13px}
.gq-hgrid.gq-c5 .gq-mchead{gap:8px}
.gq-hgrid.gq-c5 .gq-tile{flex-basis:34px;width:34px;height:34px}
.gq-hgrid.gq-c5 .gq-mclabel{font-size:12.5px;line-height:16px}
.gq-hgrid.gq-c5 .gq-hval{font-size:24px}
.gq-hval{font-size:28px;line-height:32px;font-weight:600}
.gq-hunit{font-size:15px;color:#4a5565}
.gq-hcard:has(.gq-ipick) .gq-mchead{flex-wrap:wrap;row-gap:8px}
.gq-hcard:has(.gq-ipick) .gq-mchead{gap:8px}
.gq-hcard:has(.gq-ipick) .gq-mclabel{flex:1 1 76px}
.gq-ipick{position:relative;flex:0 0 auto;margin-left:auto}
.gq-imenu{top:44px;right:0;left:auto;min-width:200px}
.gq-rpanel{background:#fff;border:1px solid #e5e7eb;border-radius:10px}
.gq-rph{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #eef0f4}
.gq-rpt{font-size:17px;color:#101828}
.gq-rpt strong{font-weight:600}
.gq-rps{font-size:13px;color:#4a5565;margin-top:4px}
.gq-tog{display:inline-flex;background:#e9ecef;border-radius:8px;padding:3px}
.gq-tog button{border:0;background:transparent;border-radius:6px;min-height:32px;padding:0 14px;font-size:13px;font-weight:500;color:#343a40}
.gq-tog button.gq-on{background:#1B202D;color:#fff}
.gq-rinner{padding:16px 20px}
.gq-rdist{display:flex;flex-wrap:wrap;gap:20px}
.gq-half{flex:1 1 320px;min-width:0}
.gq-dh{font-size:15px;font-weight:600;margin-bottom:10px}
.gq-half .gq-dbody{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;overflow:visible}
.gq-dleg{flex:1 1 180px;min-width:0;display:flex;flex-direction:column;gap:8px}
.gq-dl{display:flex;align-items:center;gap:8px;font-size:14px}
.gq-ddot{flex:0 0 10px;width:10px;height:10px;border-radius:50%}
.gq-dnm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#33373f}
.gq-dl span:last-child{font-weight:600;font-variant-numeric:tabular-nums}
.gq-dchart{flex:0 0 auto;margin:0 auto}
.gq-dchart svg{display:block;width:180px;height:180px}
.gq-rdiv{width:1px;background:#eef0f4;align-self:stretch}
@media (max-width:760px){.gq-rdiv{display:none}}
.gq-nodata{margin:0;padding:24px 0;color:#6b7280;font-size:14px;text-align:center}
.gq-ddtool{display:flex;justify-content:flex-start;margin-bottom:12px}
.gq-dsmenu{position:absolute;left:0;top:44px;z-index:20;min-width:260px;background:#fff;border:1px solid #e4e5e7;border-radius:8px;box-shadow:0 8px 24px rgba(16,24,40,.12);padding:6px}
.gq-dsmenu button{display:block;width:100%;text-align:left;border:0;border-radius:6px;background:transparent;min-height:36px;padding:0 10px;font-size:14px;color:#1b202d}
.gq-dsmenu button:hover,.gq-dsmenu button.gq-on{background:#e9ecef}
.gq-dlbtn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:0;border-radius:6px;background:#1B202D;color:#fff;font-size:14px;font-weight:500}
.gq-dlbtn[disabled]{background:#adb5bd;cursor:not-allowed}
.gq-tempty{margin:0;padding:20px;text-align:center;color:#4a5565;font-size:14px;background:#f8f9fb;border-radius:8px}
.gq-rtw{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}
.gq-rtable{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.gq-rtable th{background:#e5f0fa;text-align:left;font-weight:600;color:#1b202d;padding:0;border-bottom:1px solid #d6e2ef;white-space:nowrap}
.gq-rtable td{padding:10px 12px;border-bottom:1px solid #f1f3f5;vertical-align:top;color:#1b202d}
.gq-rtable tbody tr:last-child td{border-bottom:0}
.gq-rtable:not(.gq-dtable) tbody tr:hover td{background:#fafbfc}
.gq-thsort{display:flex;align-items:center;gap:6px;width:100%;min-height:42px;padding:0 12px;border:0;background:transparent;font-weight:600;font-size:14px;color:#1b202d;text-align:left;white-space:nowrap}
.gq-sic{display:inline-flex;color:#9ca3af}
.gq-sic.gq-on{color:#0066cc}
.gq-idc{position:sticky;left:0;z-index:2;background:#fff;border-right:1px solid #e5e7eb;min-width:48px;white-space:nowrap}
.gq-rtable th.gq-idc{background:#e5f0fa;z-index:3}
.gq-thi{display:flex;align-items:center;justify-content:space-between;gap:2px;min-height:42px;padding:0 4px 0 12px}
.gq-thi .gq-thsort{padding:0;min-height:0}
.gq-idt{width:28px;height:28px;border:0;border-radius:6px;background:transparent;display:flex;align-items:center;justify-content:center}
.gq-idt:hover{background:rgba(0,102,204,.1)}
.gq-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:14px;color:#4a5565}
.gq-pager label{display:flex;align-items:center;gap:8px}
.gq-pgr{display:flex;align-items:center;gap:10px}
.gq-pgbtn{width:34px;height:34px;border:1px solid #dfe3ec;border-radius:6px;background:#fff;display:flex;align-items:center;justify-content:center}
.gq-pgbtn[disabled]{opacity:.4;cursor:not-allowed}
@media (max-width:1100px){.gq-hgrid{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))!important}}
@media (max-width:640px){.gq-mi{padding:16px}
.gq-hero{flex-wrap:wrap}
.gq-hero .gq-harrow{order:2}
.gq-hero .gq-harrow-ph{display:none}
.gq-rph,.gq-rinner{padding:14px}}
/* ---- one standard dropdown shape for every multi-asset control (button or native select) ---- */
.gq-pill,.gq-dsel,.gq-rp .gq-ddbtn,.gq-msel{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;height:38px;padding:0 14px;border:1px solid #e4e5e7;border-radius:8px;background-color:#fff;color:#101828;font-size:14px;font-weight:500;line-height:1;white-space:nowrap;box-shadow:none}
.gq-pill svg,.gq-dsel svg,.gq-rp .gq-ddbtn svg{flex:0 0 14px;width:14px;height:14px;color:#101828;stroke:#101828}
.gq-pill:hover,.gq-dsel:hover,.gq-rp .gq-ddbtn:hover,.gq-msel:hover:not(:disabled){border-color:#c9ccd1;background-color:#fafbfc}
.gq-pill[aria-expanded="true"],.gq-dsel[aria-expanded="true"],.gq-rp .gq-ddbtn[aria-expanded="true"]{border-color:#0066cc}
.gq-app select.gq-msel{-webkit-appearance:none;appearance:none;display:inline-block;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23101828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;cursor:pointer}
.gq-mtable select.gq-msel{width:100%;min-width:150px}
.gq-mtable td.gq-bad select.gq-msel{border-color:#d92d20;background-color:#fef3f2}
.gq-ci.gq-locked{color:#4a5565;background:#f3f4f6;border-color:transparent;cursor:not-allowed}
.gq-bufnote{margin:-6px 0 0;font-size:13px;color:#4a5565}
.gq-bufnote b{font-weight:600;color:#101828}
.gq-pitem .gq-pt{flex:1;min-width:0}
.gq-pitem .gq-pn{font-size:13px;color:#6b7280;font-variant-numeric:tabular-nums}
.gq-rp .gq-ddmenu .gq-dditem{font-size:14px;min-height:36px}
.gq-mtable select.gq-msel{min-width:186px}
.gq-btn-light.gq-mbtn2{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px}
.gq-btn-light[disabled]{background:#f3f4f6;color:#9ca3af;border-color:#e5e7eb;cursor:not-allowed}
.gq-dlbtn:hover:not([disabled]){background:#2b3244}
.gq-dicthead{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}
.gq-dicthead p{max-width:720px}
.gq-dstats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.gq-dstats>div{flex:1 1 180px;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.gq-dstats b{font-size:26px;font-weight:600;color:#101828}
.gq-dstats span{font-size:14px;color:#4a5565}
.gq-thpad{display:block;padding:12px}
.gq-dgdesc{font-size:13px;color:#4a5565;margin-top:3px;max-width:640px}
.gq-dgonly{font-size:12px;color:#7c2d12;margin-top:4px;max-width:640px}
.gq-dictp .gq-rtable td{white-space:normal}
/* ---- ecoregion / biome / NNH line in the results summary ---- */
.gq-ecoline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 32px;margin-top:18px;padding-top:16px;border-top:1px solid #eef0f4}
@media (max-width:900px){.gq-ecoline{grid-template-columns:minmax(0,1fr)}}
.gq-ecogrp{display:flex;flex-direction:column;gap:8px;min-width:0}
.gq-ecopills{display:flex;flex-wrap:nowrap;gap:8px;min-width:0}
.gq-ecopills .gq-ecow{min-width:0}
.gq-ecopick{display:flex;align-items:center;gap:8px;min-width:0}
.gq-ecosel{flex:1 1 auto;min-width:0}
.gq-ecosel .mantine-Select-input{background:#eaf0fb!important;border-color:#d8e6fb!important;color:#0043a7!important;font-weight:600}
.gq-ecoinfo{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex:0 0 36px;border:1px solid #d8e6fb;border-radius:6px;background:#fff;cursor:pointer}
.gq-ecoinfo:hover,.gq-ecoinfo[aria-expanded="true"]{background:#eaf0fb}
.gq-ecopick .gq-ecopop{left:auto;right:0}
.gq-ecow{position:relative;display:inline-flex;max-width:100%}
.gq-ecolab{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;padding:0;font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#4a5565;cursor:pointer}
.gq-ecolab:hover,.gq-ecolab[aria-expanded="true"]{color:#0043a7}
.gq-ecopill{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:34px;padding:6px 12px;background:#eaf0fb;color:#0043a7;border:1px solid #d8e6fb;border-radius:6px;font-size:14px;font-weight:600;text-align:left;cursor:pointer}
.gq-ecopill:hover,.gq-ecopill[aria-expanded="true"]{background:#dbe6f9}
.gq-ecopill .gq-et{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gq-ecopill .gq-ec{flex:0 0 auto;min-width:20px;padding:0 6px;border-radius:10px;background:#fff;color:#0043a7;font-size:12px;line-height:18px;text-align:center}
.gq-ecopill svg,.gq-ecolab svg{flex:0 0 14px;opacity:.8}
.gq-ecomore{min-height:34px;padding:0 10px;border:1px dashed #b9cdef;border-radius:6px;background:#fff;color:#0043a7;font-size:14px;font-weight:500}
.gq-ecomore:hover{background:#f4f8ff}
.gq-ecopop{position:absolute;top:calc(100% + 6px);left:0;z-index:45;width:340px;max-width:calc(100vw - 48px);padding:14px 16px;background:#fff;border:1px solid #e4e5e7;border-radius:10px;box-shadow:0 10px 30px rgba(16,24,40,.16);font-size:13px;line-height:1.5;color:#33373f;text-transform:none;letter-spacing:0;font-weight:400;cursor:auto}
.gq-ecopop .gq-ept{font-size:15px;font-weight:600;color:#101828;margin-bottom:6px}
.gq-ecopop p{margin:0 0 8px}
.gq-ecopop .gq-erows>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #f1f3f5}
.gq-ecopop .gq-erows>div span:first-child{color:#4a5565}
.gq-ecopop .gq-erows>div span:last-child{font-weight:500;text-align:right;color:#101828}
.gq-ecopop .gq-esub{font-size:12px;font-weight:600;color:#4a5565;margin-top:6px}
.gq-ecopop ul{margin:4px 0 0;padding-left:18px;max-height:150px;overflow-y:auto}
.gq-ecopop dl{margin:6px 0 0}
.gq-ecopop dt{font-weight:600;color:#101828;margin-top:6px}
.gq-ecopop dd{margin:2px 0 0}
.gq-ecopop .gq-esrc{margin-top:10px;font-size:11px;color:#6b7280}
.gq-ecopop .gq-ilink{margin-top:8px}
@media (max-width:640px){.gq-ecopop{position:fixed;left:16px;right:16px;top:auto;bottom:16px;width:auto;max-width:none;max-height:70vh;overflow-y:auto}}
/* ---- single point: drop a pin ---- */
.gq-map.gq-pinnable > svg{cursor:crosshair}
.gq-map.gq-pinnable .gq-pin{pointer-events:none}
/* ---- multi-asset: geo file input ---- */
.gq-misel{height:40px;font-size:15px;margin:0}
.gq-msamples{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.gq-msamples>span{font-size:13px;color:#4a5565}
.gq-mfilebar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px;font-size:14px;color:#4a5565}
.gq-mfilebar b{color:#101828;font-weight:600}
.gq-shcell{display:flex;align-items:center;gap:10px;min-width:260px;padding:4px 2px}
.gq-shcell .gq-chip{margin-left:auto;white-space:nowrap}
.gq-mtable tr.gq-skip td{background:#fafafa}
.gq-mtable td.gq-skipnote{font-size:13px;color:#7f1d1d;padding-left:10px}
/* ---- shell additions for Dash ---- */
.gq-app{min-height:100vh}
.gq-logo{text-decoration:none}
.gq-logo-full{height:50px;display:block}
.gq-logo-icon{height:44px;display:none}
.gq-side.gq-collapsed .gq-logo-full{display:none}
.gq-side.gq-collapsed .gq-logo-icon{display:block}
.gq-cathead .gq-cat-chev{transition:transform .2s ease}
.gq-cat.gq-closed .gq-cat-chev{transform:rotate(180deg)}
.gq-cat.gq-closed .gq-navlist{display:none}
.gq-navbtn{text-decoration:none}
a.gq-navbtn:hover{text-decoration:none}
/* Collapsed rail: 80px, as in the Data Portal (its menu text can't widen it) */
.gq-side.gq-collapsed{flex:0 0 80px;width:80px;min-width:80px;max-width:80px}
.gq-side.gq-collapsed .gq-cats{display:none}
.gq-side.gq-collapsed .gq-rail-collapse{margin-top:auto}
.gq-ic-expand{display:none!important}
.gq-side.gq-collapsed .gq-ic-collapse{display:none!important}
.gq-side.gq-collapsed .gq-ic-expand{display:block!important}
.gq-side.gq-collapsed .gq-rail-label,.gq-side.gq-collapsed .gq-nm,.gq-side.gq-collapsed .gq-user-chev{display:none!important}
.gq-umenu[hidden]{display:none}
.gq-main>div{max-width:100%}

/* ---------------------------------------------------------------------------------------------
   Dash build: pieces the prototype drew with plain HTML, plus Data Dictionary / About pages
   --------------------------------------------------------------------------------------------- */
.gq-page{display:flex;flex-direction:column;gap:24px}
.gq-page>div{display:flex;flex-direction:column}
.gq-di-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.gq-di .gq-di-head h1{margin:0}
.gq-field{display:flex;flex-direction:column;flex:1 1 180px;min-width:0}
.gq-field .gq-lbl{display:block}
.gq-row2{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}
.gq-impact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.gq-search-msg{margin:8px 0 0;font-size:14px;color:#14532d;min-height:20px}
.gq-search-msg.gq-bad{color:#b42318}
.gq-coords{margin:12px 0 0;font-size:14px;color:#4a5565}
.gq-samples{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0 4px;font-size:14px;color:#4a5565}
.gq-shnote{margin:8px 0 0}
.gq-launch-msg:empty{display:none}
.gq-launch-msg{margin-bottom:12px}
.gq-launch-msg .gq-ferr{margin:0}
.gq-pinnable .leaflet-container{cursor:crosshair}
.gq-map .leaflet-container,.gq-mmap .leaflet-container{width:100%;height:100%;min-height:inherit;border-radius:4px;font-family:inherit}
.gq-mmap{height:460px}
.gq-shape-pick{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gq-ghost{display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.gq-ghost-dark{border-color:#1b202d;color:#1b202d}
.gq-ghost-dark:hover{background:#f3f4f6;color:#1b202d}

/* Multi Asset Mode: input card extras, run progress, report charts */
.gq-mempty-box{border:1px dashed #d0d5dd;border-radius:10px;padding:28px 12px;text-align:center;color:#4a5565;font-size:14px;margin-bottom:16px}
.gq-mtw .dash-table-container{font-family:inherit}
.gq-mtw .dash-spreadsheet-container .dash-spreadsheet-inner td.dash-delete-cell,
.gq-mtw .dash-spreadsheet-container .dash-spreadsheet-inner th.dash-delete-header{border:0!important;width:40px;min-width:40px;color:#9ca3af}
.gq-mtw .dash-delete-cell:hover{color:#b42318}
.gq-mprogress:empty{display:none}
.gq-mprogress{margin-top:14px}
.gq-mbar{height:8px;border-radius:4px;background:#e5e7eb;overflow:hidden}
.gq-mbar-fill{height:100%;background:#0066cc;border-radius:4px;transition:width .4s ease}
.gq-mptext{margin-top:6px;font-size:14px;color:#4a5565}
.gq-mpstart{display:flex;align-items:center;gap:10px;font-size:14px;color:#1b202d}
.gq-mpstart .gq-spin,.gq-cap .gq-spin{border-color:rgba(27,32,45,.25);border-top-color:#1b202d}
.gq-cap .gq-spin{display:inline-block;vertical-align:-2px;margin-right:8px}
.gq-merrors{margin-top:14px;font-size:14px;color:#7f1d1d;background:#fef3f2;border:1px solid #fecdca;border-radius:8px;padding:10px 14px}
.gq-merrors summary{cursor:pointer;font-weight:500}
.gq-merrors ul{margin:8px 0 0;padding-left:20px;max-height:240px;overflow:auto}
.gq-donut{display:block;width:200px;height:200px;max-width:100%}
.gq-vmsg ul{margin:6px 0 0;padding-left:20px}

/* API Specification and About */
.gq-spec h1,.gq-about h1,.gq-dictp h1{margin:0 0 8px;font-size:24px;font-weight:500}
.gq-about-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.gq-about-lead{font-size:16px;margin:0 0 8px}
.gq-about-list{margin:0;padding-left:22px;font-size:16px;line-height:1.8}

/* Data Dictionary */
/* stat tiles use the legend's colours: peach = shown on the dashboard, orange = API only */
.gq-dstat-shown{background:#FFE8D7;border-color:#f3cfb3!important}
.gq-dstat-api{background:#F2A770;border-color:#e08c4e!important}
.gq-dstat-shown span,.gq-dstat-api span{color:#1b202d!important}
.gq-dkey{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-bottom:16px;font-size:14px;color:#1b202d}
.gq-dkey>span{display:inline-flex;align-items:center;gap:8px}
.gq-dkey-sw{width:18px;height:14px;border-radius:3px;background:#FFE8D7;border:1px solid #f3cfb3}
.gq-dkey-sw.gq-dkey-api{background:#F2A770;border-color:#e08c4e}
.gq-dkey-hint{color:#6a7282}
.gq-dgroups{display:flex;flex-direction:column;gap:12px}
.gq-dgroup{border:1px solid #e5e7eb;border-radius:10px;background:#fff}
.gq-dgroup[open]{box-shadow:0 1px 2px rgba(16,24,40,.05)}
.gq-dsum{display:flex;align-items:center;gap:20px;padding:14px 18px;cursor:pointer;list-style:none}
.gq-dsum::-webkit-details-marker{display:none}
.gq-dsum-main{flex:1;min-width:0}
.gq-dgname{font-size:17px;font-weight:600;color:#101828}
.gq-dgname.gq-api{color:#9a3d06}
.gq-dsum-n{display:flex;flex-direction:column;align-items:flex-end;min-width:96px;text-align:right}
.gq-dsum-n b{font-size:18px;font-weight:600;color:#101828}
.gq-dsum-n span{font-size:12px;color:#4a5565}
.gq-dchev{transition:transform .2s ease;flex:none}
.gq-dgroup[open] .gq-dchev{transform:rotate(180deg)}
.gq-dgroup .gq-rtw{margin:0 18px 18px}
.gq-dtable td{vertical-align:top}
.gq-dtable td.gq-dfield{font-weight:500;min-width:200px;background:#FFE8D7}
.gq-dtable td.gq-dfield.gq-api{background:#F2A770;color:#1b202d}
.gq-dtable td.gq-ddesc{min-width:320px;max-width:560px;white-space:normal}
.gq-dtable td.gq-api{color:#9a3d06;font-weight:500}
@media (max-width:700px){.gq-dsum{flex-wrap:wrap}.gq-dsum-n{align-items:flex-start;text-align:left}}

/* Methodology: a download straight from the sidebar */
.gq-navdl .gq-navlbl{flex:1}
.gq-navdl .gq-navdl-ic{opacity:.9}
.gq-navdl:hover .gq-navdl-ic{filter:brightness(2.2)}

/* Side-by-side fields: label rows share one height so the inputs below line up, with room between
   the Custom checkbox and the dropdown */
.gq-lblrow{display:flex;align-items:center;justify-content:space-between;gap:12px;height:28px;margin-bottom:10px}
.gq-lblrow .gq-lbl{margin:0;line-height:1.2}
.gq-impact-head{flex-wrap:nowrap}
.gq-searchrow{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px}
.gq-inp.gq-inp-lg{height:44px;font-size:16px}

/* Single-asset cards: 12-column grid, spans set per card (4 a row, 3 or 2 rather than leave one alone) */
.gq-grid12{grid-template-columns:repeat(12,minmax(0,1fr))}
@media (max-width:1100px){.gq-grid12>*{grid-column:span 6!important}.gq-grid12>*:last-child:nth-child(odd){grid-column:span 12!important}}
@media (max-width:640px){.gq-grid12>*{grid-column:span 12!important}}
.gq-harrow-ph{visibility:hidden;pointer-events:none}

/* "How the rating bands are set" in View Details */
.gq-bandintro{margin:0 0 10px}
.gq-bands{list-style:none;margin:0 0 4px;padding:0;display:flex;flex-direction:column;gap:10px}
.gq-bands li{display:flex;align-items:center;gap:16px;font-size:13.5px;line-height:1.4;color:#1b202d}
.gq-bandchip{flex:0 0 96px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:13px;font-weight:500}
.gq-banddot{flex:0 0 12px;color:#4a5565}
.gq-bandnote{margin:12px 0 0}
.gq-bandsrc{margin-top:14px;padding-top:10px;border-top:1px solid #eef0f4;font-size:13px;color:#4a5565}
.gq-bandsrc-lbl{display:block;font-weight:500;color:#1b202d}
.gq-bandsrc-url{display:block;margin-top:3px;font-size:11px;line-height:1.45;color:#0066cc;word-break:break-all}
/* Data Dictionary rows: up to four lines, longer text scrolls within the cell */
.gq-dcell{max-height:5.8em;line-height:1.45;overflow-y:auto;white-space:pre-line;overscroll-behavior:contain;scrollbar-width:thin}
.gq-dcell:focus{outline:2px solid #0066cc;outline-offset:2px}
.gq-dcell.gq-more{cursor:pointer;-webkit-mask-image:linear-gradient(to bottom,#000 72%,transparent);mask-image:linear-gradient(to bottom,#000 72%,transparent)}
.gq-dcell.gq-open{max-height:none;cursor:pointer}

/* Page heads (Data Dictionary, API Specification): title + download button, then a full-width intro */
.gq-dicthead{align-items:center;margin-bottom:10px}
.gq-plain p.gq-pageintro{max-width:none;margin:0 0 20px}
.gq-dstats2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:12px}
.gq-dstats2>div{flex:none}
.gq-dstats2 .gq-dstat-total{grid-row:span 2;justify-content:center;padding:16px 20px}
.gq-dstats2 .gq-dstat-shown,.gq-dstats2 .gq-dstat-api{flex-direction:row;align-items:baseline;gap:10px;padding:8px 16px}
.gq-dstats2 .gq-dstat-shown b,.gq-dstats2 .gq-dstat-api b{font-size:20px}
@media (max-width:700px){.gq-dstats2{grid-template-columns:minmax(0,1fr)}.gq-dstats2 .gq-dstat-total{grid-row:auto}}

/* API Specification (v2) */
.gq-lmd>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px}
.gq-lmd>summary::-webkit-details-marker{display:none}
.gq-lmd .gq-lmchev{transform:rotate(-90deg);transition:transform .2s ease}
.gq-lmd[open] .gq-lmchev{transform:none}
.gq-lmd-body{margin-top:10px;font-size:14px;line-height:1.6;color:#33373f}
.gq-plain .gq-lmd-body p{font-size:14px;color:#33373f}
.gq-spec .gq-lmd{margin:12px 0}
.gq-spechead{margin:28px 0 12px}
.gq-spechead h2{margin:0;font-size:18px;font-weight:400;color:#101828}
.gq-speccard .gq-dsum{align-items:flex-start}
.gq-ephead{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.gq-method{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.04em;color:#fff;background:#1b202d}
.gq-m-post{background:#0066cc}.gq-m-get{background:#137201}.gq-m-put{background:#c2410c}.gq-m-delete{background:#b42318}
.gq-epurl{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:600;color:#101828;word-break:break-all}
.gq-specbody{padding:4px 18px 18px;border-top:1px solid #eef0f4}
.gq-specbody h4{margin:18px 0 6px;font-size:15px;font-weight:600;color:#101828}
.gq-specbody h5{margin:0 0 8px;font-size:13px;font-weight:500;color:#4a5565}
.gq-specbody hr{border:0;border-top:1px solid #eef0f4;margin:18px 0 0}
.gq-specbody .gq-txt{margin:14px 0 0;font-size:14px}
.gq-code{margin:0;padding:12px 14px;max-height:400px;overflow:auto;background:#fff;border:1px solid #e4e7ee;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.5;white-space:pre-wrap;color:#1b202d}
.gq-codein{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;background:#f3f4f6;border-radius:4px;padding:1px 6px;color:#1b202d;word-break:break-word}
.gq-spectable td{font-size:13.5px}
.gq-spectable td.gq-fdesc{white-space:normal;min-width:280px}
.gq-req{display:inline-block;min-width:36px;text-align:center;border:1px solid #1b202d;border-radius:10px;padding:0 8px;font-size:12px;font-weight:600;color:#1b202d}
.gq-req-yes{background:#1b202d;color:#fff}
.gq-schemalink{font-size:13px;color:#0066cc;white-space:nowrap}
.gq-authlist{margin:4px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.gq-rtable:not(.gq-dtable).gq-spectable tbody tr:hover td{background:transparent}

/* ---- Double Materiality Assessment, in the Nature and Biodiversity style ---- */
a.gq-btn-outline,a.gq-btn-dark,a.gq-dlbtn{text-decoration:none}
a.gq-btn-outline:hover{color:#1B202D}
a.gq-dlbtn:hover{color:#fff}
.gq-dma{display:flex;flex-direction:column;gap:24px}
.gq-dma-card{padding:24px}
.gq-dma-card .gq-mihead{margin-bottom:16px}
.gq-dma-h2{margin:0 0 14px;font-size:18px;font-weight:500;color:#101828}
.gq-dma-filerow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px}
.gq-dma-filerow .mantine-Checkbox-label{font-size:15px;color:#1b202d}
.gq-dma-settings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gq-dma-settings .gq-field{display:flex;flex-direction:column;gap:10px}
.gq-dma-settings .gq-lblrow{margin-bottom:0}
.gq-dma-input input{height:40px;border:1px solid #ced4da;border-radius:6px;font-size:15px;font-family:inherit}
.gq-dma-dd .Select-control{min-height:40px;border:1px solid #ced4da;border-radius:6px;font-size:15px}
.gq-dma-dd.is-disabled .Select-control,.gq-dma-dd .is-disabled .Select-control{background:#f3f4f6}
/* Options: fixed-height rows (optionHeight=56 in playground.py); long names wrap onto up to three
   lines, centred in the row, instead of spilling into the next option. */
.gq-dma-dd .VirtualizedSelectOption{display:flex;align-items:center;box-sizing:border-box;padding:0 12px;white-space:normal;
  line-height:1.25;font-size:14px;overflow:hidden;border-bottom:1px solid #f1f3f5}
.gq-dma-dd .VirtualizedSelectFocusedOption{background:#eef4fc}
.gq-dma-dd .VirtualizedSelectSelectedOption{font-weight:600}
.gq-dma-dd .Select--multi .Select-value{max-width:calc(100% - 10px);white-space:normal;line-height:1.3}
/* One focus line only: no browser outline on the inner text input, no extra glow on the box */
.gq-app .Select-input > input:focus,.gq-app .Select-input > input:focus-visible{outline:none;box-shadow:none}
.gq-app .Select.is-focused > .Select-control,.gq-app .Select.is-focused:not(.is-open) > .Select-control{box-shadow:none}
.gq-app .gq-dma-dd .Select.is-focused > .Select-control{border-color:#2563eb}
@media (max-width:1000px){.gq-dma-settings{grid-template-columns:minmax(0,1fr)}}
.gq-dma-addrow{margin-top:18px}
.gq-dma-submit{position:sticky;bottom:0;z-index:5;display:flex;justify-content:flex-end;gap:12px;padding:14px 0;background:linear-gradient(to top,#f3f4f6 65%,rgba(243,244,246,0))}
.gq-dma-output:empty{display:none}
.gq-dma-outhead{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.gq-dma-outhead .gq-dma-h2{margin:0}
/* About */
.gq-aboutbox{background:#f4f8ff;border:1px solid #d8e6fb;border-radius:10px;padding:20px 24px;margin-top:16px;color:#33373f}
.gq-plain .gq-aboutbox p{font-size:15px;line-height:1.6;color:#33373f;margin:0 0 14px}
.gq-aboutbox h2{margin:0 0 10px;font-size:17px;font-weight:700;color:#101828}
.gq-aboutbox ul{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:8px;font-size:15px;line-height:1.5}
.gq-aboutbox.gq-soon{background:#1942a1;border-color:#1942a1;color:#fff}
.gq-aboutbox.gq-soon h2,.gq-aboutbox.gq-soon li{color:#fff}

/* Previous / Next: white like the other buttons; disabled = grey text, same background */
.gq-pgbtn[disabled]{opacity:1;background:#fff;cursor:not-allowed}
.gq-pgbtn[disabled] img{opacity:.35}
.gq-pagerbtn.btn{background:#fff!important;color:#1b202d!important;border:1px solid #dfe3ec!important;opacity:1!important;box-shadow:none!important}
.gq-pagerbtn.btn:hover:not(:disabled){background:#f3f4f6!important}
.gq-pagerbtn.btn:disabled,.gq-pagerbtn.btn.disabled{background:#fff!important;color:#9ca3af!important;border-color:#e5e7eb!important;cursor:not-allowed;pointer-events:auto}
/* DataTable page controls (multi-asset tables): same treatment */
.previous-next-container button{background:#fff!important;border:1px solid #dfe3ec!important;border-radius:6px;color:#1b202d!important;min-width:32px;height:32px}
.previous-next-container button:disabled{color:#9ca3af!important;border-color:#e5e7eb!important;cursor:not-allowed}


/* Data Input header: identical in Single and Multi Asset Mode (same row height, same title position) */
.gq-di-head,.gq-mihead{min-height:40px;margin-bottom:16px}
.gq-mi .gq-mihead{margin-bottom:0}
.gq-di .gq-di-head h1,.gq-mihead h1{margin:0;font-size:24px;font-weight:500;line-height:40px}
.gq-mihead>div:first-child{align-items:baseline}  /* "(max …)" sits on the title's baseline */
/* "Search by:" and its dropdown */
.gq-di h2.gq-first{gap:12px}
/* the file limit in the upload drop zones */
.gq-limit{background:#fef3c7;color:#101828;font-weight:600;padding:0 4px;border-radius:3px}

/* ---- Login page (pages/home.py), matching the Data Portal login ---- */
.gq-lp{display:grid;grid-template-columns:minmax(420px,44%) 1fr;min-height:100vh;width:100%;background:#fff;
  font-family:"Aktiv Grotesk","DM Sans","Helvetica Neue",Arial,sans-serif;color:#03053A}
.gq-lp-form{display:flex;flex-direction:column;padding:5px 40px}
.gq-lp-brand{padding-top:12px}
.gq-lp-brand img{height:50px;width:auto;display:block}
.gq-lp-wrap{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:400px;margin:0 auto;padding:32px 0}
.gq-lp-intro{text-align:center;margin-bottom:22px}
.gq-lp-eyebrow{display:block;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:#888;margin:0 0 10px}
.gq-lp-title{font-size:32px;font-weight:700;line-height:1.15;letter-spacing:-.01em;color:#03053A;margin:0}
.gq-lp-rule{display:block;width:44px;height:3px;background:#ED702D;border-radius:2px;margin:16px auto 0}
.gq-lp-lede{font-size:14px;line-height:1.55;color:#60646C;margin:16px 0 0}
.gq-lp-field{margin-top:16px}
.gq-lp-field .mantine-InputWrapper-label,.gq-lp-field label{font-size:12px;font-weight:500;color:#03053A;margin-bottom:7px}
.gq-lp-field .mantine-InputWrapper-required{display:none}
.gq-lp-field input,.gq-lp-field .mantine-PasswordInput-input,.gq-lp-field .mantine-TextInput-input{height:46px;min-height:46px;background:#F7F7F8;
  border:1px solid #E0E3EB;border-radius:8px;font-size:14px;color:#03053A;font-family:inherit}
.gq-lp-field .mantine-PasswordInput-innerInput{height:44px;background:transparent;border:0}
.gq-lp-field input:focus,.gq-lp-field .mantine-PasswordInput-input:focus-within,.gq-lp-field .mantine-TextInput-input:focus{border-color:#1942A1;outline:none}
.gq-lp .gq-lp-field input:focus-visible{outline:none}
.gq-lp-btn{width:100%;height:46px;margin-top:26px;border:0;border-radius:8px;background:#ED702D;color:#fff;font-size:16px;font-weight:600;
  letter-spacing:.01em;font-family:inherit;cursor:pointer;transition:background-color .15s ease}
.gq-lp-btn:hover{background:#D45F1F}
.gq-lp-btn:focus-visible{outline:2px solid #1942A1;outline-offset:2px}
.gq-lp-signup{margin:26px 0 0;padding-top:22px;border-top:1px solid #E0E3EB;font-size:14px;line-height:1.6;color:#60646C;text-align:center}
.gq-lp-signup span{display:block}
.gq-lp-signup a{font-weight:500;color:#0078CC;text-decoration:none}
.gq-lp-signup a:hover{text-decoration:underline}
/* showcase */
.gq-lp-show{position:relative;overflow:hidden;background:#1B202D;display:flex;align-items:center;justify-content:center;padding:56px 48px;min-height:100vh}
.gq-lp-show::before,.gq-lp-show::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.gq-lp-show::before{width:820px;height:820px;top:-280px;right:-260px;background:radial-gradient(circle,rgba(25,66,161,.42) 0%,rgba(27,32,45,0) 68%)}
.gq-lp-show::after{width:560px;height:560px;bottom:-200px;left:-120px;background:radial-gradient(circle,rgba(237,112,45,.13) 0%,rgba(27,32,45,0) 66%)}
.gq-lp-car{position:relative;z-index:1;width:100%;max-width:880px;background:#fff;border-radius:14px;box-shadow:0 26px 60px rgba(0,0,0,.34);overflow:hidden}
.gq-lp-car-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px 16px}
.gq-lp-car-head h2{font-size:18px;font-weight:600;color:#03053A;margin:0;letter-spacing:-.005em}
.gq-lp-pill{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:#ED702D;background:#FDF0E8;padding:5px 10px;border-radius:999px;white-space:nowrap}
.gq-lp-car-view{overflow:hidden}
.gq-lp-car-track{display:flex;transition:transform .62s cubic-bezier(.4,.02,.2,1)}
.gq-lp-slide{flex:0 0 100%;min-width:0;margin:0;padding:0 24px 4px}
.gq-lp-shot{border:1px solid #E0E3EB;border-radius:9px;overflow:hidden;background:#F7F7F8;aspect-ratio:1240/686}
.gq-lp-shot img{width:100%;height:100%;object-fit:cover;object-position:top left;display:block;cursor:zoom-in}
/* full-size view of a showcase screenshot */
.gq-lp-lightbox{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:40px;background:rgba(3,5,58,.82);cursor:zoom-out}
.gq-lp-lightbox figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;cursor:default}
.gq-lp-lightbox img{max-width:100%;max-height:calc(100vh - 160px);border-radius:6px;box-shadow:0 30px 70px rgba(0,0,0,.5)}
.gq-lp-lightbox figcaption{margin-top:16px;text-align:center}
.gq-lp-lightbox .gq-lp-cap-t{color:#fff}.gq-lp-lightbox .gq-lp-cap-s{color:rgba(255,255,255,.7)}
.gq-lp-lightbox button{position:absolute;top:20px;right:24px;width:40px;height:40px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);border-radius:8px;color:#fff;font-size:22px;line-height:1;cursor:pointer}
.gq-lp-lightbox button:hover{background:rgba(255,255,255,.22)}
.gq-lp-cap{padding:16px 2px 0;min-height:74px}
.gq-lp-cap-t{display:block;font-size:16px;font-weight:600;color:#03053A}
.gq-lp-cap-s{display:block;margin-top:5px;font-size:14px;line-height:1.5;color:#60646C}
.gq-lp-car-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px 20px;min-height:30px}
.gq-lp-dots{display:flex;gap:7px}
.gq-lp-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#D3D7E0;cursor:pointer;transition:width .25s ease,background .25s ease}
.gq-lp-dot.is-on{width:22px;border-radius:4px;background:#ED702D}
.gq-lp-nav{display:flex;gap:8px}
.gq-lp-arrow{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #E0E3EB;border-radius:7px;cursor:pointer;color:#60646C;
  font-size:18px;line-height:1;padding:0;transition:border-color .15s ease,color .15s ease}
.gq-lp-arrow:hover{border-color:#1942A1;color:#1942A1}
@media (max-width:1080px){.gq-lp{grid-template-columns:1fr}.gq-lp-show{order:2;padding:44px 28px 56px;min-height:0}.gq-lp-form{order:1;padding:28px 24px 36px}
  .gq-lp-car{max-width:640px}}
@media (prefers-reduced-motion:reduce){.gq-lp-car-track{transition:none}}

/* ---- Editable input tables (asset tables, Double Materiality tables) ---- */
/* the selected / edited cell in the blue of Verify Input instead of Dash's pink */
.gq-mtw .dash-table-container .dash-spreadsheet-container .dash-spreadsheet-inner table{--accent:#0043a7;--selected-background:#ffffff}
.gq-mtw .dash-spreadsheet-inner td.focused,.gq-mtw .dash-spreadsheet-inner td.cell--selected{background-color:#ffffff!important}
.gq-mtw .dash-spreadsheet-inner td input.dash-cell-value::selection{background:transparent}
/* drop-down cells are never highlighted: the drop-down is the only thing to click */
.gq-mtw .dash-spreadsheet-inner td.dash-cell.dropdown{
  background-color:#ffffff!important;border-left:0!important;border-right:0!important;border-top:1px solid #f1f3f5!important;border-bottom:1px solid #f1f3f5!important}
.gq-mtw .dash-spreadsheet-inner td.focused input,.gq-mtw .dash-spreadsheet-inner td.cell--selected input{background-color:transparent}
.gq-mtw .dash-spreadsheet-inner td input.dash-cell-value{text-align:left!important}
.gq-mtw .dash-spreadsheet-inner td input.dash-cell-value.focused{cursor:text;caret-color:#0043a7}
/* category drop-downs: a control that fits its row, and an option list in the app's colours */
.gq-mtw td.dropdown .dash-dropdown-cell-value-container{overflow:visible}
.gq-mtw td.dropdown .Select-control{height:30px!important;min-height:30px;box-sizing:border-box;overflow:visible}
.gq-mtw td.dropdown .Select-control .Select-value,.gq-mtw td.dropdown .Select-placeholder{line-height:28px!important}
.gq-mtw td.dropdown .Select-input{height:28px}
.gq-mtw td.dropdown .Select-arrow{border-top-color:#9ca3af!important}
.gq-mtw td.dropdown .is-open .Select-arrow{border-bottom-color:#0043a7!important;border-top-color:transparent!important}
.gq-mtw td.dropdown .is-focused:not(.is-open) > .Select-control,.gq-mtw td.dropdown .is-open > .Select-control{border-color:#0043a7!important;box-shadow:none}
/* the open list is lifted out of the table's scroll box (see geoiq_shell.js), so the last rows' choices show in full */
.Select-menu-outer.gq-dd-float{z-index:1200!important;margin:0!important;background:#fff;border:1px solid #d0d5dd!important;
  border-radius:8px!important;box-shadow:0 8px 24px rgba(16,24,40,.14)!important;overflow:hidden}
.gq-mtw .Select-option,.Select-menu-outer.gq-dd-float .Select-option{color:#1b202d!important;background:#fff!important;font-size:14px;padding:8px 12px}
.gq-mtw .Select-option.is-focused,.Select-menu-outer.gq-dd-float .Select-option.is-focused{background:#eaf0fb!important;color:#0043a7!important}
.gq-mtw .Select-option.is-selected,.Select-menu-outer.gq-dd-float .Select-option.is-selected{font-weight:600}
