.portal-component{--portal-green: var(--color-primary, #075f26);--portal-green-dark: var(--color-primary-dark, #06471d);--portal-green-hover: var(--color-primary-hover, #0b7432);--portal-text: var(--color-text, #172019);--portal-muted: var(--color-text-muted, #667069);--portal-border: var(--color-border, #dfe5e0);--portal-soft: var(--color-primary-soft, #e8f3eb);--portal-surface: var(--color-surface, #fff);--portal-danger: var(--color-danger, #a52a2a);--portal-radius: var(--radius-md, 12px);--portal-shadow: var(--shadow-sm, 0 2px 10px rgba(7, 71, 29, .07));--portal-focus-color: var(--color-focus, #1679aa);--portal-layer-popover: 30;color:var(--portal-text);font:inherit;line-height:inherit}.portal-component *,.portal-component *:before,.portal-component *:after{box-sizing:border-box}.portal-demo-shell{max-width:1480px;margin:auto;padding:2rem 1rem;display:grid;gap:2rem}.portal-component h2{font-size:clamp(1.25rem,2vw,1.65rem);margin:0}.portal-component__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.portal-component__header p{margin:.25rem 0;color:var(--portal-muted)}.portal-component__toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:1rem}.portal-component__toolbar>label{flex:1 1 180px;font-size:.875rem}.portal-card{background:var(--portal-surface);border:1px solid var(--portal-border);border-radius:var(--portal-radius);box-shadow:none;padding:1rem}.portal-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--portal-green);border-radius:10px;padding:.65rem 1rem;background:var(--portal-green);color:#fff;font:inherit;text-decoration:none;cursor:pointer}.portal-button--secondary{background:#fff;color:var(--portal-green-dark)}.portal-button:disabled{opacity:.55;cursor:not-allowed}.portal-button:focus-visible,.portal-input:focus-visible,.portal-select:focus-visible{outline:3px solid color-mix(in srgb,var(--portal-focus-color) 45%,transparent);outline-offset:2px}.portal-input,.portal-select{display:block;min-height:44px;width:100%;border:1px solid var(--portal-border);border-radius:10px;padding:.65rem .75rem;background:#fff;color:inherit;font:inherit}.portal-component__status,.portal-component__empty,.portal-component__error{border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:1rem}.portal-component__error{border-color:color-mix(in srgb,var(--portal-danger) 35%,transparent);color:var(--portal-danger)}.portal-chip{display:inline-flex;align-items:center;min-height:32px;border-radius:999px;padding:.25rem .65rem;background:var(--portal-soft);color:var(--portal-green-dark);font-size:.875rem}.portal-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.portal-help{color:var(--portal-muted);font-size:.875rem}.portal-directory__filters{background:var(--portal-soft);padding:1rem;border-radius:var(--portal-radius)}.portal-directory__search{flex-grow:2!important}.portal-check{display:flex;align-items:center;gap:.5rem;min-height:44px}.portal-check input{width:20px;height:20px;accent-color:var(--portal-green)}.portal-directory__count{color:var(--portal-muted)}.portal-directory__results{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.portal-directory__card h3{margin-top:0}.portal-directory__contacts{display:grid;grid-template-columns:minmax(80px,auto) 1fr;gap:.35rem .75rem}.portal-directory__contacts dt{font-weight:600}.portal-directory__contacts dd{margin:0;white-space:pre-line;overflow-wrap:anywhere}.portal-directory__locked{padding:.75rem;background:var(--portal-soft);border-radius:10px;margin:1rem 0}.portal-directory__pagination{text-align:center;margin-top:1rem}.portal-calendar{width:100%;max-width:100%;min-width:0;font-size:1.025rem}.portal-calendar__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem;min-width:0}.portal-calendar__navigation,.portal-calendar__views{display:flex;align-items:center;gap:.5rem}.portal-calendar__navigation strong{min-width:155px;margin-left:.5rem;text-transform:capitalize;font-size:1.14rem}.portal-calendar__navigation .portal-button{position:relative;height:36px;min-width:36px;min-height:36px;padding:0 .65rem}.portal-calendar__navigation .portal-button:before{position:absolute;inset:-4px;content:""}.portal-calendar__arrow{width:36px;min-width:36px;min-height:36px;padding:.25rem;font-size:1.1rem}.portal-calendar__filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),240px));align-items:end;background:var(--portal-soft);gap:.55rem .9rem;padding:.75rem .85rem;border-radius:var(--portal-radius)}.portal-calendar__filters>label{min-width:0}.portal-calendar__grid{display:grid;width:100%;max-width:100%;min-width:0;grid-template-columns:repeat(7,minmax(0,1fr));overflow-x:visible;border-top:1px solid var(--portal-border);border-left:1px solid var(--portal-border)}.portal-calendar__row{display:contents}.portal-calendar__weekday{padding:.65rem;text-align:center;background:var(--portal-soft);font-size:.92rem;font-weight:700;border-right:1px solid var(--portal-border);border-bottom:1px solid var(--portal-border)}.portal-calendar__day{display:flex;flex-direction:column;gap:.35rem;min-width:0;min-height:126px;padding:.55rem;border:0;border-right:1px solid var(--portal-border);border-bottom:1px solid var(--portal-border);background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}.portal-calendar__day:hover{background:var(--portal-soft)}.portal-calendar__day:focus-visible{position:relative;z-index:1;outline:3px solid rgba(21,85,31,.35);outline-offset:-3px}.portal-calendar__day--outside{color:var(--portal-muted);background:#f8faf8}.portal-calendar__day--today .portal-calendar__date{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--portal-green);color:#fff}.portal-calendar__day--selected{box-shadow:inset 0 0 0 3px var(--portal-green)}.portal-calendar__date{font-size:1.02rem;font-weight:700}.portal-calendar__events{display:grid;gap:.3rem;min-width:0}.portal-calendar__event{overflow:hidden;border-left:3px solid var(--portal-green);border-radius:5px;padding:.22rem .35rem;background:var(--portal-soft);color:var(--portal-green-dark);font-size:.8rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.portal-calendar__event small{font:inherit}.portal-calendar__continues,.portal-calendar__more{color:var(--portal-muted);font-size:.78rem}.portal-calendar__selected{margin-top:1.25rem}.portal-calendar__list{display:grid;gap:.75rem}.portal-calendar__list-item{display:grid;grid-template-columns:minmax(150px,210px) 1fr;gap:1rem}.portal-calendar__list-item h3,.portal-calendar__list-item p{margin:.3rem 0}.portal-calendar__list-item a{color:var(--portal-green-dark)}.portal-calendar__members{color:var(--portal-muted);font-size:.92rem}.portal-calendar__widget-title{margin-bottom:.75rem!important;font-size:1.2rem!important}.portal-calendar--compact{width:100%;max-width:300px;margin-inline:auto;font-size:.9rem}.portal-calendar--compact .portal-calendar__toolbar{margin-bottom:.55rem}.portal-calendar--compact .portal-calendar__navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;width:100%;gap:.25rem}.portal-calendar--compact .portal-calendar__navigation strong{grid-column:2;grid-row:1;min-width:0;margin:0;text-align:center;font-size:1rem}.portal-calendar--compact .portal-calendar__navigation button:first-child{grid-column:1}.portal-calendar--compact .portal-calendar__navigation button:nth-child(2){grid-column:3}.portal-calendar--compact .portal-calendar__arrow{height:44px;min-width:44px;min-height:44px;padding:.25rem;font-size:1.2rem}.portal-calendar--compact .portal-calendar__weekday{padding:.3rem .1rem;border:0;background:transparent;font-size:.72rem;color:var(--portal-muted)}.portal-calendar--compact .portal-calendar__grid{border:0;gap:2px}.portal-calendar--compact .portal-calendar__day{position:relative;align-items:center;justify-content:center;min-height:36px;padding:0;border:0;border-radius:8px;background:transparent}.portal-calendar--compact .portal-calendar__day--outside{opacity:.38}.portal-calendar--compact .portal-calendar__day--selected{background:var(--portal-soft);box-shadow:inset 0 0 0 1px var(--portal-green)}.portal-calendar--compact .portal-calendar__day--today .portal-calendar__date{width:28px;height:28px}.portal-calendar__dot{position:absolute;bottom:3px;width:5px;height:5px;border-radius:50%;background:var(--portal-green)}.portal-calendar--compact .portal-calendar__selected{margin-top:.75rem;border-top:1px solid var(--portal-border);padding-top:.7rem}.portal-calendar--compact .portal-calendar__list{gap:.5rem}.portal-calendar--compact .portal-calendar__list-item{display:block;padding:.7rem;border:0;border-radius:9px;background:var(--portal-soft);box-shadow:none}.portal-calendar--compact .portal-calendar__list-item time{font-size:.76rem;color:var(--portal-muted)}.portal-calendar--compact .portal-chip,.portal-calendar--compact .portal-calendar__members,.portal-calendar--compact .portal-calendar__list-item p:not(.portal-calendar__members){display:none}.portal-calendar--compact .portal-calendar__list-item h3{font-size:.9rem;line-height:1.3}.portal-map__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,290px);min-height:620px;border:1px solid var(--portal-border);border-radius:var(--portal-radius);overflow:hidden;background:var(--portal-surface)}.portal-map__stage{position:relative;min-width:0;background:var(--portal-soft)}.portal-map__panel-toggle{position:absolute;z-index:6;top:.75rem;right:.75rem;min-height:44px;border:1px solid var(--portal-border);border-radius:9px;padding:.45rem .75rem;background:#fffffff5;color:var(--portal-green-dark);box-shadow:0 5px 16px #1231181f;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.portal-map__canvas{width:100%;height:100%;min-height:620px}.portal-map__canvas svg{max-width:none}.portal-map__canvas--unavailable{opacity:.2}.portal-map__fallback{position:absolute;left:50%;top:50%;width:min(90%,430px);transform:translate(-50%,-50%);border:1px solid var(--portal-border);border-radius:var(--portal-radius);padding:1.25rem;background:#fff;text-align:center;box-shadow:none}.portal-map__fallback p{color:var(--portal-muted)}.portal-map__sidebar{overflow:auto;max-height:620px;border-left:1px solid var(--portal-border);padding:.75rem;background:#fffffff7;font-size:.9rem}.portal-map__sidebar h3{margin:.1rem 0 .55rem;font-size:1rem}.portal-map__layer-group+.portal-map__layer-group{border-top:1px solid var(--portal-border);margin-top:.75rem;padding-top:.75rem}.portal-map__layer{margin:.25rem 0}.portal-map__layer-toggle{display:grid;grid-template-columns:18px 18px 1fr;align-items:center;gap:.45rem;min-height:38px;cursor:pointer}.portal-map__layer-toggle input{width:17px;height:17px;accent-color:var(--portal-green)}.portal-map__layer-toggle small{display:inline;margin-left:.3rem;color:var(--portal-muted);font-size:.76rem}.portal-map__layer-toggle--locked{color:var(--portal-muted);cursor:not-allowed}.portal-map__swatch{width:17px;height:17px;border:2px solid;border-radius:4px;opacity:.75}.portal-map__layer>.portal-help{margin:.1rem 0 .35rem 36px;font-size:.78rem}.portal-map__locked{border-radius:8px;padding:.5rem;background:var(--portal-soft);color:var(--portal-muted);font-size:.8rem}.portal-map__layer-error{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-radius:8px;padding:.5rem;background:#fff4f4;color:var(--portal-danger);font-size:.8rem}.portal-map__layer-error button{min-height:32px;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer}.portal-map__search{position:relative;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid var(--portal-border)}.portal-map__search>label{display:block;margin-bottom:.25rem;font-weight:650}.portal-map__search>small{display:block;margin-top:.2rem;color:var(--portal-muted);font-size:.72rem}.portal-map__search-results{position:absolute;z-index:4;top:67px;right:0;left:0;margin:0;padding:.25rem;list-style:none;border:1px solid var(--portal-border);border-radius:9px;background:#fff;box-shadow:none}.portal-map__search-results button{display:block;width:100%;border:0;border-radius:7px;padding:.55rem;background:transparent;color:inherit;text-align:left;cursor:pointer}.portal-map__search-results button:hover{background:var(--portal-soft)}.portal-map__search-results small{display:block;color:var(--portal-muted)}.portal-map__search-error{color:var(--portal-danger);font-size:.8rem}.portal-map__basemap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:0 0 .75rem;border:0;border-bottom:1px solid var(--portal-border);padding:0 0 .75rem}.portal-map__basemap legend{grid-column:1 / -1;margin-bottom:.2rem;padding:0;font-weight:650}.portal-map__basemap label{display:flex;align-items:center;justify-content:center;gap:.25rem;min-height:44px;border:1px solid var(--portal-border);border-radius:8px;padding:.3rem;background:#fff;cursor:pointer}.portal-map__basemap label:has(input:checked){border-color:#15551f59;background:var(--portal-soft);color:var(--portal-green-dark)}.portal-map__basemap input{width:16px;height:16px;accent-color:var(--portal-green)}.portal-map__basemap .portal-map__search-error{grid-column:1 / -1;margin:.2rem 0 0}.portal-map__details--below{margin-top:.75rem;border:1px solid var(--portal-border);border-radius:12px;padding:.9rem;background:#fff}.portal-map__details-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.portal-map__details-heading button{width:32px;height:32px;border:0;border-radius:50%;background:var(--portal-soft);color:var(--portal-text);font-size:1.2rem;cursor:pointer}.portal-map__details h4{margin:.6rem 0}.portal-map__details-heading h3,.portal-map__details-heading p{margin:0}.portal-map__details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.portal-map__contacts{display:grid;grid-template-columns:minmax(70px,auto) 1fr;gap:.3rem .55rem}.portal-map__contacts dt{font-weight:600}.portal-map__contacts dd{margin:0;overflow-wrap:anywhere}.portal-map__metrics{margin-top:.9rem;border-top:1px solid var(--portal-border);padding-top:.65rem}.portal-map__metrics dl{display:grid;grid-template-columns:minmax(150px,1fr) minmax(140px,1fr);gap:.45rem 1rem;margin:0}.portal-map__metrics dt{color:var(--portal-muted)}.portal-map__metrics dd{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .65rem;margin:0}.portal-map__metrics small{display:flex;flex-wrap:wrap;gap:.25rem .65rem;color:var(--portal-muted)}.portal-map__details-actions{display:flex;justify-content:flex-end;margin-top:.8rem;border-top:1px solid var(--portal-border);padding-top:.75rem}@media(max-width:860px){.portal-map__layout{grid-template-columns:1fr;min-height:0}.portal-map__canvas{min-height:420px}.portal-map__sidebar{max-height:none;border-top:1px solid var(--portal-border);border-left:0;border-radius:var(--portal-radius) var(--portal-radius) 0 0}.portal-map__details-grid{grid-template-columns:1fr;gap:.4rem}}@media(max-width:640px){.portal-component__toolbar{align-items:stretch;flex-direction:column}.portal-component__toolbar>label{width:100%;flex-basis:auto}.portal-directory__results{grid-template-columns:1fr}.portal-demo-shell{padding:1rem .75rem}.portal-calendar__toolbar{align-items:stretch}.portal-calendar__navigation{flex-wrap:wrap}.portal-calendar__navigation strong{width:100%;order:-1;margin:0;font-size:1.1rem}.portal-calendar__views .portal-button{flex:1}.portal-calendar__grid{width:100%;max-width:100%;min-width:0;overflow-x:visible;grid-template-columns:repeat(7,minmax(0,1fr))}.portal-calendar__weekday{position:sticky;top:0}.portal-calendar__day{min-width:0;min-height:76px;padding:.35rem .25rem}.portal-calendar__list-item{grid-template-columns:1fr}.portal-calendar--compact .portal-calendar__grid{overflow:visible;grid-template-columns:repeat(7,minmax(0,1fr))}.portal-calendar--compact .portal-calendar__day{min-height:36px}.portal-calendar--compact .portal-calendar__navigation strong{width:auto;order:initial;font-size:1rem}}@media(max-width:480px){.portal-calendar__events{display:none}.portal-calendar__weekday{padding:.45rem .1rem;font-size:.78rem}.portal-calendar__filters{grid-template-columns:minmax(0,1fr);padding:.75rem}}@media(prefers-reduced-motion:reduce){.portal-component *{scroll-behavior:auto!important;transition:none!important}}.portal-directory__filters{background:#f6f9f6;padding:.8rem;border:1px solid var(--portal-border);border-radius:12px}.portal-directory__count{margin:.65rem 0;font-size:.88rem}.portal-directory__results{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.7rem}.portal-directory__card{padding:.8rem;border-radius:11px;box-shadow:0 4px 16px #0f40180b}.portal-directory__card h3{margin:0 0 .35rem;font-size:1.02rem;line-height:1.3}.portal-directory__card>p{margin:.3rem 0}.portal-directory__card .portal-chip{min-height:26px;padding:.12rem .5rem;font-size:.78rem}.portal-directory__card .portal-button{min-height:38px;margin-top:.55rem;padding:.4rem .7rem;font-size:.86rem}.portal-directory__contacts{grid-template-columns:minmax(72px,auto) 1fr;gap:.25rem .55rem;margin-top:.55rem;font-size:.88rem}.portal-directory__locked{padding:.6rem;border-radius:8px;margin:.6rem 0}.portal-calendar__event{border-left-color:var(--event-color, var(--portal-green));background:#f4f8f4}.portal-calendar__markers{display:flex;align-items:center;gap:3px;margin-top:auto;min-height:7px}.portal-calendar__markers i{display:block;width:7px;height:7px;border-radius:50%}.portal-calendar__list{gap:.65rem}.portal-calendar__list-item{grid-template-columns:minmax(145px,195px) 1fr;gap:.9rem;padding:.85rem;box-shadow:none}.portal-calendar__list-item h3{font-size:1.02rem}.portal-calendar__list-item .portal-chip{border-left:3px solid var(--chip-color, var(--portal-green));border-radius:5px}.portal-calendar--compact .portal-calendar__markers{position:absolute;bottom:2px;justify-content:center;gap:2px}.portal-calendar--compact .portal-calendar__markers i{width:4px;height:4px}.portal-calendar--compact{position:relative}.portal-calendar__popover{position:absolute;z-index:var(--portal-layer-popover);right:.35rem;left:.35rem;min-height:116px;border:1px solid var(--portal-border);border-radius:10px;padding:.65rem .7rem;background:#fffffffa;box-shadow:0 12px 30px #12311829}.home-calendar:has(.portal-calendar__popover){position:relative;z-index:var(--portal-layer-popover);overflow:visible}.global-support-sidebar:has(.portal-calendar__popover),.detail-sidebar:has(.portal-calendar__popover){z-index:var(--portal-layer-popover);overflow:visible}.portal-calendar__popover--flipped{box-shadow:0 -12px 30px #12311829}.portal-calendar__summary{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.portal-calendar__list-meta{display:flex;flex-wrap:wrap;gap:.35rem}.portal-calendar__pagination{display:flex;justify-content:center;gap:.35rem;margin-top:1rem}.portal-calendar__pagination button{min-width:38px;min-height:38px;border:1px solid var(--portal-border);border-radius:8px;background:var(--portal-surface);color:var(--portal-green-dark);cursor:pointer}.portal-calendar__pagination button[aria-current=page]{background:var(--portal-green);color:#fff}.portal-calendar__pagination button:disabled{opacity:.45;cursor:not-allowed}.portal-calendar__popover-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-bottom:1px solid var(--portal-border);padding-bottom:.35rem;color:var(--portal-muted);font-size:.78rem}.portal-calendar__popover-head button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:var(--portal-soft);color:var(--portal-text);font:inherit;font-size:1.15rem;line-height:1;cursor:pointer}.portal-calendar__popover h3{margin:.4rem 0 .2rem;font-size:.9rem;line-height:1.25}.portal-calendar__popover h3 a{color:var(--portal-green-dark)}.portal-calendar__popover-type{display:flex;align-items:center;gap:.35rem;margin-top:.45rem;color:var(--portal-muted);font-size:.75rem}.portal-calendar__popover-type i{width:7px;height:7px;border-radius:50%}.portal-calendar__popover-range{margin:.2rem 0;color:var(--portal-muted);font-size:.76rem}.portal-calendar__popover-nav{display:grid;grid-template-columns:30px 1fr 30px;align-items:center;gap:.35rem;margin-top:.45rem;text-align:center;color:var(--portal-muted);font-size:.74rem}.portal-calendar__popover-nav button{min-height:28px;border:1px solid var(--portal-border);border-radius:7px;background:#fff;color:var(--portal-green-dark);cursor:pointer}.portal-map__layout{grid-template-columns:minmax(0,1fr) minmax(230px,270px);border-radius:12px}.portal-map__layout--wide{grid-template-columns:minmax(0,1fr)}.portal-map__sidebar{padding:.65rem;font-size:.86rem}.portal-map__sidebar h3{margin:.05rem 0 .4rem;font-size:.92rem}.portal-map__layer-toggle{grid-template-columns:17px 15px 1fr;gap:.4rem;min-height:44px}.portal-map__swatch{width:14px;height:14px;border-width:1px;border-radius:50%;opacity:.82}.portal-map__search{margin-bottom:.65rem;padding-bottom:.65rem}.portal-map__search .portal-input{min-height:39px;padding:.48rem .6rem;border-radius:8px}@media(max-width:860px){.portal-map__sidebar{padding:.75rem;border-radius:0}.portal-map__layer-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem .8rem}.portal-map__layer-group h3{grid-column:1/-1}}@media(max-width:640px){.portal-map__canvas{min-height:360px}.portal-map__layer-group{grid-template-columns:1fr}.portal-map__sidebar{font-size:.9rem}.portal-directory__card{padding:.75rem}}.portal-directory__results{display:grid;grid-template-columns:1fr;gap:.45rem}.portal-directory__item{overflow:hidden;border:1px solid var(--portal-border);border-radius:10px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.portal-directory__item--expanded{border-color:#15551f4d;box-shadow:0 7px 20px #0f40180f}.portal-directory__summary{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;width:100%;min-height:64px;border:0;padding:.65rem .55rem .65rem .85rem;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}.portal-directory__summary:hover{background:#f8faf8}.portal-directory__summary:focus-visible{outline:3px solid color-mix(in srgb,var(--portal-focus-color) 45%,transparent);box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--portal-focus-color) 45%,transparent)}.portal-directory__summary strong{display:block;font-size:.98rem;line-height:1.3}.portal-directory__summary small{display:block;margin-top:.18rem;color:var(--portal-muted);font-size:.8rem;line-height:1.35}.portal-directory__chevron{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--portal-green-dark);font-size:1.35rem;line-height:1;transition:transform .15s ease}.portal-directory__item--expanded .portal-directory__chevron{transform:rotate(180deg)}.portal-directory__details{border-top:1px solid var(--portal-border);padding:.75rem .85rem .85rem;background:#fcfdfc}.portal-directory__details>p{margin:.05rem 0 .7rem}.portal-directory__actions{display:flex;justify-content:flex-end;margin-top:.75rem;padding-top:.65rem;border-top:1px solid var(--portal-border)}.portal-directory__actions .portal-button{min-height:40px;margin:0;padding:.42rem .75rem}.portal-calendar__popover{top:100px;min-height:145px}.portal-calendar__popover-events{display:grid;gap:.45rem}.portal-calendar__popover-events article+article{border-top:1px solid var(--portal-border);padding-top:.38rem}.portal-calendar__popover-events .portal-calendar__popover-type{margin-top:.1rem}.portal-calendar__popover-events h3{margin:.18rem 0 .08rem}.portal-calendar__popover-nav button{min-height:34px;font-size:1rem}@media(max-width:640px){.portal-directory__summary{min-height:60px;padding-left:.7rem}.portal-directory__summary strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.portal-directory__actions .portal-button{width:100%}.portal-calendar__arrow{min-width:46px;min-height:46px}}.portal-map__preview{--portal-map-preview-color: var(--portal-green);position:absolute;z-index:5;top:.8rem;left:.8rem;width:min(286px,calc(100% - 1.6rem));overflow:hidden;border:1px solid color-mix(in srgb,var(--portal-map-preview-color) 30%,var(--portal-border));border-radius:10px;padding:.65rem 2.25rem .65rem .75rem;background:#fffffff7;box-shadow:0 10px 24px #12311826}.portal-map__preview:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--portal-map-preview-color);content:""}.portal-map__preview-layer{display:flex;align-items:center;gap:.36rem;color:var(--portal-muted);font-size:.7rem;line-height:1.2}.portal-map__preview-layer span{flex:0 0 auto;width:9px;height:9px;border:1px solid color-mix(in srgb,var(--portal-map-preview-color) 72%,#000);border-radius:3px;background:var(--portal-map-preview-color)}.portal-map__preview h3{margin:.2rem 0 .52rem;font-size:.9rem;line-height:1.28}.portal-map__preview-close{position:absolute;top:.34rem;right:.34rem;display:grid;place-items:center;width:29px;height:29px;border:0;border-radius:50%;background:var(--portal-soft);color:var(--portal-text);font:inherit;font-size:1.08rem;line-height:1;cursor:pointer}.portal-map__preview-more{min-height:32px;padding:.3rem .65rem;font-size:.78rem}.portal-map-list{overflow:hidden;margin-top:.75rem;border:1px solid var(--portal-border);border-radius:12px;background:#fff}.portal-map-list__toggle{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:center;width:100%;min-height:62px;border:0;padding:.65rem .55rem .65rem .9rem;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer}.portal-map-list__toggle:hover{background:#f8faf8}.portal-map-list__toggle>span:first-child>*{display:block}.portal-map-list__toggle small{margin-top:.15rem;color:var(--portal-muted);font-size:.78rem}.portal-map-list__chevron{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--portal-green-dark);font-size:1.35rem;transition:transform .15s ease}.portal-map-list__toggle[aria-expanded=true] .portal-map-list__chevron{transform:rotate(180deg)}.portal-map-list__content{border-top:1px solid var(--portal-border);padding:.8rem}.portal-map-list__toolbar{display:grid;grid-template-columns:minmax(220px,380px) 1fr;align-items:end;gap:1rem;margin-bottom:.7rem}.portal-map-list__toolbar label{font-size:.82rem;font-weight:650}.portal-map-list__toolbar .portal-input{min-height:40px;margin-top:.2rem;padding:.45rem .65rem}.portal-map-list__toolbar p{margin:0 0 .45rem;color:var(--portal-muted);font-size:.8rem}.portal-map-list__items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .65rem;max-height:330px;margin:0;padding:.1rem;overflow:auto;list-style:none}.portal-map-list__items button{display:grid;grid-template-columns:minmax(0,1fr) 24px;align-items:center;width:100%;min-height:52px;border:1px solid transparent;border-radius:8px;padding:.45rem .5rem;background:#f8faf8;color:inherit;text-align:left;font:inherit;cursor:pointer}.portal-map-list__items button:hover,.portal-map-list__items button.portal-map-list__item--selected{border-color:#15551f47;background:var(--portal-soft)}.portal-map-list__items strong{display:block;overflow:hidden;font-size:.88rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.portal-map-list__items small{display:block;margin-top:.12rem;color:var(--portal-muted);font-size:.74rem}.portal-map-list__items button>span:last-child{color:var(--portal-green-dark);font-size:1.3rem;text-align:center}.portal-map-list__more{padding-top:.65rem;text-align:center}.portal-map-list__more .portal-button{min-height:38px;padding:.4rem .8rem;font-size:.84rem}@media(max-width:640px){.portal-map__preview{top:3.7rem;left:.65rem;width:calc(100% - 1.3rem)}.portal-map-list__content{padding:.65rem}.portal-map-list__toolbar{grid-template-columns:1fr;gap:.2rem}.portal-map-list__toolbar p{margin:.15rem 0 .5rem}.portal-map-list__items{grid-template-columns:1fr;max-height:360px}}.portal-map-marker{--portal-map-marker-color: #367c48;--portal-map-marker-border: #194d28;position:relative;width:22px;height:22px;border:2px solid #fff;border-radius:50% 50% 50% 0;padding:0;background:var(--portal-map-marker-color);box-shadow:0 0 0 2px var(--portal-map-marker-border),0 4px 10px #12311847;cursor:pointer;transform:translate(-50%,-100%) rotate(-45deg);transform-origin:50% 100%;transition:filter .15s ease,scale .15s ease}.portal-map-marker:after{position:absolute;inset:6px;border-radius:50%;background:#fff;content:""}.portal-map-marker:hover,.portal-map-marker:focus-visible,.portal-map-marker--selected{z-index:2;outline:3px solid color-mix(in srgb,var(--portal-focus-color) 45%,transparent);filter:brightness(1.08);scale:1.25}.portal-directory__actions{align-items:center;flex-wrap:wrap;gap:.55rem}.portal-directory__internal-map{color:var(--portal-green-dark);font-size:.84rem;font-weight:650}@media(max-width:640px){.portal-directory__actions{align-items:stretch;flex-direction:column}.portal-directory__internal-map{padding:.35rem;text-align:center}.portal-calendar__list-item{grid-template-columns:1fr}}.portal-calendar__legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;grid-column:1 / -1;margin:.15rem 0 0;padding:0;color:var(--portal-muted);font-size:.8rem;list-style:none}.portal-calendar__legend li{display:inline-flex;align-items:center;gap:.4rem}.portal-calendar__legend-marker{width:.5rem;height:.5rem;border:1px solid currentColor;border-radius:50%}.portal-field-error{display:block;margin-top:.25rem;color:var(--portal-danger);font-size:.82rem}.portal-directory__reset{align-self:end}.portal-map__object-meta{margin:-.35rem 0 .75rem;color:var(--portal-muted);font-size:.88rem}.portal-map__organization{margin-top:1rem;border-top:1px solid var(--portal-border);padding-top:.75rem}.portal-map__metrics-table-wrap{max-width:100%;overflow-x:auto}.portal-map__metrics table{width:100%;min-width:620px;border-collapse:collapse;table-layout:fixed}.portal-map__metrics th,.portal-map__metrics td{border-bottom:1px solid var(--portal-border);padding:.55rem .65rem;overflow-wrap:anywhere;text-align:left;vertical-align:top}.portal-map__metrics thead th{background:var(--portal-soft);color:var(--portal-muted);font-size:.82rem}.portal-map__metrics tbody th{font-weight:600}.portal-map__preview-close,.portal-map__details-heading button,.portal-calendar__popover-head button,.portal-calendar__popover-nav button{min-width:44px;min-height:44px}.portal-map__layer-toggle,.portal-map__search .portal-input,.portal-map-list__toolbar .portal-input,.portal-map__preview-more,.portal-map-list__more .portal-button,.portal-directory__actions .portal-button{min-height:44px}body.a11y-spacing .portal-component{letter-spacing:.04em;word-spacing:.12em;line-height:1.75}body.a11y-underline-links .portal-component a{text-decoration:underline!important;text-underline-offset:.18em}body.a11y-contrast .portal-component{--portal-green: #003b16;--portal-green-dark: #001f0b;--portal-soft: #fff;--portal-text: #000;--portal-muted: #222;--portal-border: #000;--portal-focus-color: #005fcc}body.a11y-enabled .portal-calendar{display:none!important}body.a11y-enabled [data-vue-component=InteractiveCalendar] [data-server-fallback]{display:block!important}@media(max-width:559px){.portal-component__toolbar,.portal-map-list__toolbar{grid-template-columns:1fr}.portal-directory__reset{width:100%}.portal-map__sidebar{max-height:min(70vh,620px)}}@media(prefers-reduced-motion:reduce){.portal-component *,.portal-component *:before,.portal-component *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.portal-map__layout,.portal-map__panel-toggle,.portal-map-list__toolbar,.portal-directory__filters,.portal-directory__pagination,.portal-calendar{display:none!important}[data-vue-component=InteractiveCalendar] [data-server-fallback]{display:block!important}.portal-map__details,.portal-map__metrics-table-wrap,.portal-directory__details{overflow:visible!important;border:0;box-shadow:none}.portal-map__metrics table{min-width:0;table-layout:auto}.portal-map__metrics th,.portal-map__metrics td{break-inside:avoid}}
