.hopr-map-widget,.hm-editor{--hm-ink:#1d303b;--hm-green:#176b59;--hm-line:#dce4e9;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--hm-ink);line-height:1.5;max-width:1240px;margin:24px auto;padding:24px;background:#f6f8f9;border-radius:18px;box-sizing:border-box;text-align:left}
.hopr-map-widget *,.hm-editor *{box-sizing:border-box}.hopr-map-widget h2,.hm-editor h1{font-size:clamp(24px,3vw,36px);line-height:1.2;margin:8px 0 14px;color:var(--hm-ink)}
.hopr-map-widget h3,.hm-editor h2{font-size:20px;margin:0 0 12px}.hm-muted{color:#526674;font-size:14px}.hm-badge{display:inline-block;background:#fff0cb;color:#6b4711;border:1px solid #dfbd6b;padding:5px 11px;border-radius:99px;font-weight:700;font-size:13px}.hm-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:24px;margin:20px 0}.hm-panel{background:#fff;border:1px solid var(--hm-line);border-radius:12px;padding:18px;min-width:0}.hm-canvas svg{display:block;width:100%;height:auto;max-height:640px;touch-action:pan-y}.hm-county{stroke:#fff;stroke-width:.55;cursor:pointer;transition:opacity .12s;vector-effect:non-scaling-stroke}.hm-county:hover{filter:brightness(1.15);stroke:#162c38;stroke-width:2}.hm-province{fill:none;stroke:#354958;stroke-width:1.1;pointer-events:none;vector-effect:non-scaling-stroke}.hm-dim{opacity:.23}.hm-selected{stroke:#112c36;stroke-width:1.5}
.hopr-map-widget select,.hopr-map-widget input,.hm-editor select,.hm-editor input[type=search]{font:inherit;padding:10px;border:1px solid #a8b7c1;border-radius:7px;width:100%;background:#fff;color:#1d303b;max-width:100%;margin:6px 0 12px}.hopr-map-widget button,.hm-editor button{font:inherit;cursor:pointer;border:1px solid #bdcbd1;border-radius:7px;background:white;color:#1d303b;padding:9px 14px;min-height:42px}.hopr-map-widget button[aria-pressed=true],.hm-editor .hm-primary{background:#176b59;border-color:#176b59;color:white}.hm-editor button:disabled{opacity:.5;cursor:not-allowed}.hm-editor input[type=checkbox]{width:18px;height:18px;flex-shrink:0}.hm-list{max-height:355px;overflow:auto;border-top:1px solid var(--hm-line)}.hm-row{display:flex;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid var(--hm-line);font-size:14px}.hm-row span{flex:1}.hm-row small{display:block;color:#586a76}.hm-actions,.hm-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.hm-dot{width:11px;height:11px;border-radius:50%;display:inline-block;margin-right:7px}.hm-legend{display:flex;gap:8px 15px;flex-wrap:wrap;font-size:12px}.hm-courses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.hm-course{border:1px solid var(--hm-line);background:white;padding:18px;border-radius:12px;overflow-wrap:anywhere}.hm-course h3{font-size:18px}.hm-course a{color:#176b59;text-decoration:underline;font-weight:700}.hm-empty{padding:20px;background:white;border:1px dashed #b4c4ca;border-radius:10px}.hm-error{color:#953b2a}.hm-editor label{display:block}.hm-editor .hm-row{display:flex}.hm-editor details{margin-top:22px}.hm-editor summary{cursor:pointer;font-weight:700}.hm-editor:focus-visible,.hm-editor :focus-visible,.hopr-map-widget :focus-visible{outline:3px solid #176b59;outline-offset:3px}
.hm-coordinators{margin:16px 0 22px;padding:16px;border-left:3px solid var(--hm-green);background:#edf4f1;border-radius:6px;overflow-wrap:anywhere}.hopr-map-widget .hm-coordinators h3{font-size:15px;margin:0 0 8px}.hopr-map-widget .hm-coordinators .hm-contact-heading{margin-top:18px}.hm-coordinators p{margin:6px 0 0}.hm-coordinator-name{font-size:18px;font-weight:600}.hm-coordinators a{color:#176b59;text-decoration:underline}
@media(max-width:760px){.hm-grid{grid-template-columns:1fr}.hm-courses{grid-template-columns:1fr}.hopr-map-widget,.hm-editor{padding:14px;margin:12px auto;border-radius:10px}.hm-panel{padding:12px}.hm-list{max-height:280px}}

.hopr-map-widget .hm-project{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0;padding:14px 0;border-top:1px solid var(--hm-line);border-bottom:1px solid var(--hm-line)}.hopr-map-widget .hm-project-logo{display:block;flex:0 0 auto;width:140px;max-width:45%;height:40px;object-fit:contain;object-position:right center;margin:0}.hopr-map-widget .hm-project-caption{order:-1;min-width:0;flex:1}.hm-project-caption span,.hm-project-caption strong{display:block}.hm-project-caption strong{font-size:14px;overflow-wrap:anywhere}
