:root{--color-background: #fbfcff;--color-surface: #ffffff;--color-border: #dbe3f1;--color-border-strong: #c9d5ea;--color-text: #17233f;--color-text-muted: #637492;--color-text-soft: #8c99b4;--color-accent: #5450e8;--color-accent-strong: #4039de;--color-accent-soft: #eef0ff;--color-error: #9f2f58;--color-focus-ring: rgba(84, 80, 232, .26);--color-trust: #edf3ff;--shadow-soft: 0 16px 36px rgba(84, 80, 232, .12);--shadow-hover: 0 18px 30px rgba(84, 80, 232, .16);font-family:Avenir Next,Trebuchet MS,sans-serif;color:var(--color-text);background:var(--color-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--color-text);background:linear-gradient(180deg,#fff,#f9fbff)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;white-space:nowrap;clip:rect(0,0,0,0);border:0}h1,h2,h3,p{margin-top:0}h1{margin-bottom:.85rem;font-size:3rem;line-height:1.04}h2{margin-bottom:.5rem;font-size:2rem;line-height:1.08}h3{margin-bottom:.5rem;font-size:1.05rem}#root,.auth-stage,.dashboard-layout,.status-screen{min-height:100vh}.auth-stage{display:grid;place-items:start center;padding:clamp(.9rem,2vw,1.5rem)}.auth-stage__inner{width:min(100%,35rem);display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:.25rem 0 2rem;text-align:center}.auth-stage__brand-lockup{display:grid;justify-items:center;gap:.75rem;margin-top:.1rem}.auth-brand{display:grid;place-items:center;width:5rem;height:3.3rem;border:1px solid #f3c94f;border-radius:.7rem;background:#fff;box-shadow:0 4px 10px #23232314}.auth-brand__mark{position:relative;width:2.8rem;height:2.3rem;border-radius:.6rem;background:#090909}.auth-brand__sun{position:absolute;top:.45rem;right:.52rem;width:.28rem;height:.28rem;border-radius:999px;background:#fff}.auth-brand__ridge{position:absolute;left:.62rem;bottom:.63rem;height:.7rem;border-left:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:skew(-32deg) rotate(-45deg);transform-origin:bottom left}.auth-brand__ridge--back{width:.78rem}.auth-brand__ridge--front{left:1.18rem;bottom:.57rem;width:.92rem;height:.82rem}.auth-stage__wordmark,.auth-stage__legal{margin:0;color:#90a0bd;text-transform:uppercase;letter-spacing:.28em;font-size:.82rem}.auth-stage__eyebrow-row{display:flex;justify-content:center;width:100%}.auth-stage__eyebrow{margin:0;padding:.45rem .7rem;border-radius:.35rem;background:var(--color-accent-soft);color:var(--color-accent);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.auth-stage__copy{max-width:26rem}.auth-stage__copy p{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.6}.auth-stage__form{width:100%}.auth-stage__form--login{max-width:27rem}.auth-stage__form--register{margin-top:-.25rem;max-width:35rem}.auth-form-shell{width:100%}.auth-form{display:grid;gap:1.35rem;text-align:left}.auth-form--compact{gap:1rem}.auth-field-grid{display:grid;gap:1rem}.auth-field-grid--split{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-field{display:grid;gap:.55rem}.ui-field__label{color:#36455f;font-size:.96rem;font-weight:700}.ui-input{width:100%;min-height:3.5rem;border:1px solid var(--color-border);border-radius:1rem;padding:.95rem 1.05rem;color:var(--color-text);background:#fff;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:inset 0 1px #ffffffbf;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}select.ui-input{padding-right:2.6rem;background-image:linear-gradient(45deg,transparent 50%,#637492 50%),linear-gradient(135deg,#637492 50%,transparent 50%);background-position:calc(100% - 1.25rem) 50%,calc(100% - .9rem) 50%;background-size:.36rem .36rem,.36rem .36rem;background-repeat:no-repeat}.ui-textarea{min-height:6rem;resize:vertical;line-height:1.45}.ui-input::placeholder{color:#75849e}.ui-input:hover{border-color:var(--color-border-strong)}.ui-input:focus-visible{outline:none;border-color:#5450e861;box-shadow:0 0 0 4px var(--color-focus-ring)}.ui-input[aria-invalid=true]{border-color:#b3476f75;background:#b3476f09}.ui-input[aria-invalid=true]:focus-visible{box-shadow:0 0 0 4px #9f2f5833}.ui-field__helper,.ui-field__error{margin:-.15rem 0 0;font-size:.84rem;line-height:1.45}.ui-field__helper{color:var(--color-text-soft)}.ui-field__error{color:var(--color-error);font-weight:700}.form-error{margin:0;padding:.85rem .95rem;border:1px solid rgba(159,47,88,.24);border-radius:1rem;background:#9f2f5814;color:var(--color-error);font-weight:700;line-height:1.45}.form-success{margin:0;padding:.85rem .95rem;border:1px solid rgba(34,126,86,.24);border-radius:1rem;background:#ecf8f2;color:#1f704d;font-weight:700;line-height:1.45}.auth-form__utility{margin-top:-.25rem;text-align:right}.auth-verification{display:grid;gap:1rem;text-align:center}.auth-verification__status{display:grid;place-items:center;justify-self:center;width:3.4rem;height:3.4rem;border:1px solid rgba(84,80,232,.26);border-radius:1rem;background:var(--color-accent-soft);color:var(--color-accent);font-size:1rem;font-weight:800}.auth-verification--success .auth-verification__status{border-color:#227e5647;background:#ecf8f2;color:#227e56}.auth-verification--error .auth-verification__status{border-color:#9f2f583d;background:#9f2f5814;color:var(--color-error)}.auth-verification h2{margin-bottom:0;font-size:1.55rem}.auth-verification p{margin:0;color:var(--color-text-muted);line-height:1.55}.ui-button{border:1px solid transparent;border-radius:1rem;padding:1rem 1.2rem;font-weight:700;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.ui-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover)}.ui-button:focus-visible{outline:none;box-shadow:0 0 0 4px var(--color-focus-ring)}.ui-button:disabled{cursor:not-allowed;opacity:.78;transform:none;box-shadow:none}.ui-button[data-loading=true]{cursor:wait}.ui-button--full{width:100%}.ui-button--primary{background:linear-gradient(90deg,var(--color-accent-strong) 0%,var(--color-accent) 100%);color:#fff}.ui-button--secondary{border-color:var(--color-border);background:#fff;color:var(--color-accent)}.auth-submit{margin-top:.15rem;min-height:4.1rem;border-radius:1.05rem;box-shadow:0 12px 28px #5450e838;font-size:1.02rem}.auth-switch-row{margin:1.35rem 0 0;color:var(--color-text-soft);font-size:.96rem;text-align:center}.auth-stage__form--login .auth-switch-row{margin-top:1.05rem;font-size:.9rem}.auth-stage__form--register .auth-switch-row{margin-top:1.15rem}.auth-inline-link{border:0;padding:0;background:transparent;color:var(--color-accent);font-weight:700}.auth-inline-link:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:4px;border-radius:.25rem}.register-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%;margin:0 0 1rem;padding:0;list-style:none}.register-steps__item button{display:flex;align-items:center;justify-content:center;gap:.45rem;width:100%;min-height:2.65rem;border:1px solid var(--color-border);border-radius:.7rem;padding:.55rem .65rem;background:#fff;color:var(--color-text-muted);font-size:.88rem;font-weight:700}.register-steps__item span{display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:999px;background:#eef2f8;color:var(--color-text-muted);font-size:.78rem}.register-steps__item--active button,.register-steps__item[aria-current=step] button{border-color:#5450e852;background:var(--color-accent-soft);color:var(--color-accent)}.register-steps__item--active span,.register-steps__item[aria-current=step] span{background:var(--color-accent);color:#fff}.register-panel{display:grid;gap:1.05rem}.register-claim-panel{display:grid;gap:.9rem;border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;background:#fbfcff;text-align:left}.register-claim-panel h3{margin-bottom:0;font-size:1.05rem}.register-actions{display:flex;align-items:center;gap:.75rem}.register-actions .ui-button{min-height:3.5rem;flex:1}.rating-field{display:grid;gap:.65rem;margin:0;padding:0;border:0}.rating-field legend{padding:0;color:#36455f;font-size:.96rem;font-weight:700}.rating-control{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem}.rating-control__button{min-height:3rem;border:1px solid var(--color-border);border-radius:.75rem;background:#fff;color:var(--color-text-muted);font-weight:800}.rating-control__button--active{border-color:#5450e84d;background:var(--color-accent);color:#fff}.register-skip{justify-self:start;font-size:.92rem}.dashboard-layout{--page-gutter: clamp(1.5rem, 3vw, 3rem);display:grid;gap:1.5rem;padding:0 0 var(--page-gutter)}.dashboard-header,.dashboard-hero,.dashboard-callout{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dashboard-header h1{max-width:none;font-size:clamp(2.6rem,4vw,4rem)}.dashboard-grid{display:grid;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-card,.dashboard-hero,.dashboard-callout,.status-card{padding:1.25rem;border:1px solid var(--color-border);border-radius:1.5rem;background:var(--color-surface);box-shadow:var(--shadow-soft)}.dashboard-card li,.dashboard-hero p,.dashboard-callout p,.status-card p{color:var(--color-text-muted);line-height:1.6}.dashboard-callout{border-color:#5450e847;background:linear-gradient(180deg,#fff,#f7f8ff)}.dashboard-callout--warning{border-color:#be861947;background:linear-gradient(180deg,#fff,#fff9eb)}.dashboard-callout h2{font-size:1.55rem}.callout-feedback{margin:.55rem 0 0;font-weight:700}.callout-feedback--error{color:var(--color-error)}.dashboard-card ul{margin:0;padding-left:1.25rem}.dashboard-card li::marker{color:var(--color-accent)}.dashboard-card li+li{margin-top:.7rem}.dashboard-card--action{display:grid;align-content:start;gap:.75rem}.dashboard-card--wide{grid-column:1 / -1}.dashboard-card--action h2{margin-bottom:0;font-size:1.45rem}.dashboard-card--action p:not(.eyebrow){margin-bottom:0;color:var(--color-text-muted);line-height:1.55}.dashboard-card__link,.directory-back-link,.vendor-card__detail-link{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:2.75rem;border:1px solid var(--color-border);border-radius:.85rem;padding:.75rem 1rem;background:#fff;color:var(--color-accent);font-weight:800;text-decoration:none}.dashboard-card__link:focus-visible,.directory-back-link:focus-visible,.vendor-card__detail-link:focus-visible,.vendor-card__select:focus-visible,.vendor-contact-link:focus-visible,.vendor-contact-email:focus-visible{outline:none;box-shadow:0 0 0 4px var(--color-focus-ring)}.dashboard-card code{color:var(--color-accent-strong);font-weight:700}.admin-claims-panel,.admin-claim-list,.admin-claim-item{display:grid;gap:1rem}.admin-claim-item{grid-template-columns:minmax(0,1fr) auto;align-items:start;border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;background:#fff}.admin-claim-item h3,.admin-claim-item p{margin:0}.admin-claim-item p{color:var(--color-text-muted);line-height:1.5}.admin-claim-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.admin-import-header{align-items:flex-start}.dashboard-header.admin-import-header h1,.directory-header.community-board-header h1{margin-bottom:.35rem;font-size:clamp(1.85rem,2.5vw,2.5rem);line-height:1.08}.dashboard-header.admin-import-header .eyebrow,.directory-header.community-board-header .eyebrow{margin-bottom:.4rem}.dashboard-header.admin-import-header .hero-copy,.directory-header.community-board-header .hero-copy{margin-bottom:0;line-height:1.45}.admin-import-panel,.admin-import-status-card,.admin-import-current-run{display:grid;gap:1rem}.admin-import-controls{display:grid;grid-template-columns:minmax(12rem,18rem) minmax(0,1fr);gap:1rem;align-items:end}.admin-import-actions{display:flex;flex-wrap:wrap;gap:.75rem}.admin-import-run-actions{display:flex;flex-wrap:wrap;gap:.65rem}.admin-import-current-run{background:#f7fbff;border-color:#1673ff38}.admin-import-current-run__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.admin-import-live-status{border:1px solid rgba(22,115,255,.28);border-radius:999px;padding:.35rem .65rem;background:#fff;color:var(--color-text);font-size:.82rem;font-weight:800}.admin-import-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0}.admin-import-progress-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;margin:0}.admin-import-metrics div,.admin-import-progress-metrics div{border:1px solid var(--color-border);border-radius:8px;padding:.75rem;background:#fff}.admin-import-metrics dt,.admin-import-progress-metrics dt{color:var(--color-text-muted);font-size:.82rem;font-weight:800}.admin-import-metrics dd,.admin-import-progress-metrics dd{margin:.15rem 0 0;color:var(--color-text);font-size:1.25rem;font-weight:800}.admin-import-table{display:grid;overflow-x:auto;border:1px solid var(--color-border);border-radius:8px;background:#fff}.admin-import-table__row{display:grid;grid-template-columns:.7fr .7fr 1.15fr .5fr 1.2fr;gap:.75rem;min-width:48rem;padding:.85rem 1rem;border-top:1px solid var(--color-border);color:var(--color-text-muted)}.admin-import-table__row:first-child{border-top:0}.admin-import-table__row--header{background:var(--color-trust);color:var(--color-text);font-weight:800}.chip-row{display:flex;flex-wrap:wrap;gap:.75rem}.chip{padding:.65rem .9rem;border:1px solid rgba(86,125,255,.18);border-radius:999px;background:linear-gradient(180deg,#ffffff 0%,var(--color-trust) 100%);color:#39496a;font-weight:600}.contribution-page{--page-gutter: clamp(1.5rem, 3vw, 3rem);display:grid;gap:1.5rem;min-height:100vh;padding:0 0 var(--page-gutter)}.community-board-page{--page-gutter: clamp(1.25rem, 3vw, 3rem);display:grid;gap:1.25rem;min-height:100vh;padding:0 0 var(--page-gutter);background:var(--cave-bg)}.community-board-header{align-items:flex-start}.community-board-groups,.community-board-group{display:grid;gap:1rem}.community-board-group__heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.community-board-group__heading h2{margin:0;font-size:1.45rem}.community-board-group__heading span{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;height:2.25rem;border-radius:999px;background:#e8f4f7;color:var(--cave-teal);font-weight:800}.community-entry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.community-entry-card{display:grid;gap:.85rem;align-content:start;border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;background:#fff;box-shadow:0 10px 22px #17233f14}.community-entry-card__header,.community-entry-card__footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.community-entry-card__header time,.community-entry-card__footer{color:var(--color-text-muted);font-size:.86rem;line-height:1.4}.community-entry-card__type{width:fit-content;margin:0;border-radius:999px;padding:.35rem .65rem;font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.community-entry-card__type--vendor{background:#8034bf1a;color:var(--cave-plum)}.community-entry-card__type--site{background:#eb539e1f;color:var(--cave-magenta)}.community-entry-card h3{margin:0;color:var(--cave-dark);font-size:1.15rem}.community-entry-card__details{margin:0;color:var(--color-text-muted);line-height:1.55}.community-entry-card__tags{display:flex;flex-wrap:wrap;gap:.45rem}.community-entry-card__tags span{border:1px solid rgba(6,103,141,.14);border-radius:999px;padding:.35rem .55rem;background:#f3fafb;color:#3a5261;font-size:.8rem;font-weight:700}.community-entry-card__footer a{color:var(--cave-sky);font-weight:800;text-decoration:none}.contribution-header{align-items:flex-start}.contribution-shell{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(17rem,.7fr);gap:1rem;align-items:start}.contribution-form,.contribution-aside{display:grid;gap:1rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:1.5rem;background:var(--color-surface);box-shadow:var(--shadow-soft)}.contribution-form h2,.contribution-aside h2{margin:0;font-size:1.45rem}.contribution-aside p:not(.eyebrow){color:var(--color-text-muted);line-height:1.6}.contribution-type-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding:.35rem;border:1px solid var(--color-border);border-radius:1rem;background:#f6f8fc}.contribution-type-control button{min-height:2.7rem;border:1px solid transparent;border-radius:.75rem;background:transparent;color:var(--color-text-muted);font:inherit;font-weight:800;cursor:pointer}.contribution-type-control button[aria-pressed=true]{border-color:#5450e838;background:#fff;color:var(--color-accent);box-shadow:0 .6rem 1.2rem #222d4714}.verification-pill{display:inline-flex;align-items:center;width:fit-content;margin:.75rem 0 0;border:1px solid transparent;border-radius:999px;padding:.45rem .75rem;font-size:.86rem;font-weight:800}.verification-pill--verified{border-color:#227e5633;background:#ecf8f2;color:#227e56}.verification-pill--pending{border-color:#be861938;background:#fff4d9;color:#8a5d11}.verification-pill--unverified{border-color:#9f2f582e;background:#9f2f5814;color:var(--color-error)}.status-screen{display:grid;place-items:center;padding:2rem}.status-card{width:min(100%,28rem)}.vendor-directory:not(.search-page){--page-gutter: clamp(1.25rem, 3vw, 3rem);display:grid;gap:1.25rem;min-height:100vh;padding:0 0 var(--page-gutter)}.directory-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.directory-header h1{font-size:clamp(2.45rem,4vw,4rem)}.directory-header .hero-copy{max-width:48rem;color:var(--color-text-muted);line-height:1.6}.directory-toolbar,.directory-status{border:1px solid var(--color-border);border-radius:1.25rem;padding:1.1rem;background:var(--color-surface);box-shadow:var(--shadow-soft)}.directory-toolbar{display:grid;gap:1rem}.directory-search{display:grid;gap:.55rem}.directory-search__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem}.directory-search__row .ui-button{min-width:7rem}.directory-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.directory-toolbar__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.directory-toolbar__footer p,.directory-status p{margin:0;color:var(--color-text-muted);line-height:1.55}.directory-status h2{font-size:1.45rem}.directory-status--error{border-color:#9f2f582e;background:#9f2f580f}.vendor-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.vendor-card{display:grid;align-content:start;gap:1rem;border:1px solid var(--color-border);border-radius:.5rem;padding:1.1rem;background:#fff;box-shadow:0 10px 22px #17233f14}.vendor-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.vendor-card h2{margin-bottom:0;font-size:1.35rem;line-height:1.16}.vendor-card__tier{flex:0 0 auto;border:1px solid rgba(34,126,86,.2);border-radius:999px;padding:.4rem .65rem;background:#ecf8f2;color:#227e56;font-size:.78rem;font-weight:800}.vendor-card__summary,.vendor-card__note p{margin:0;color:var(--color-text-muted);line-height:1.6}.vendor-card__facts{display:grid;gap:.7rem;margin:0}.vendor-card__facts div{display:grid;grid-template-columns:8.75rem minmax(0,1fr);gap:.75rem}.vendor-card__facts dt,.vendor-card__note strong{color:#39496a;font-size:.82rem;font-weight:800;text-transform:uppercase}.vendor-card__facts dd{margin:0;color:var(--color-text-muted);line-height:1.45}.vendor-card__tags{display:flex;flex-wrap:wrap;gap:.5rem}.vendor-tag{border:1px solid rgba(86,125,255,.2);border-radius:999px;padding:.42rem .62rem;background:#f5f8ff;color:#39496a;font-size:.82rem;font-weight:700}.vendor-tag--muted{border-color:var(--color-border);background:#fff;color:var(--color-text-soft)}.vendor-card__note{display:grid;gap:.4rem;border-top:1px solid var(--color-border);padding-top:1rem}.vendor-card__detail-link{margin-top:auto}.vendor-card__actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:auto;padding-top:1rem}.vendor-card__actions .vendor-card__detail-link{margin-top:0}.vendor-card__select{align-self:flex-start;min-height:2.75rem;border:1px solid var(--cave-plum);border-radius:.85rem;padding:.75rem 1rem;background:#fff;color:var(--cave-plum);cursor:pointer;font:inherit;font-weight:800}.vendor-card__select[aria-pressed=true]{background:var(--vendor-soft)}.vendor-card__select:disabled{border-color:var(--color-border);color:var(--color-text-soft);cursor:not-allowed}.comparison-tray{display:grid;gap:1rem;border:1px solid var(--cave-lavender);border-radius:8px;padding:1rem;background:#fff;box-shadow:0 10px 22px #17233f14}.comparison-tray__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.comparison-tray__header h2{margin-bottom:0;color:var(--cave-plum);font-size:1.35rem}.comparison-tray__header span{border:1px solid var(--cave-lavender);border-radius:999px;padding:.4rem .65rem;background:var(--vendor-soft);color:var(--cave-plum);font-weight:800}.comparison-tray__items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none}.comparison-tray__items li{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;min-width:0;border:1px solid var(--color-border);border-radius:8px;padding:.75rem;background:#fbfcff}.comparison-tray__items strong,.comparison-tray__items span{display:block}.comparison-tray__items strong{color:var(--color-text);line-height:1.25}.comparison-tray__items span,.comparison-tray__empty{margin:0;color:var(--color-text-muted);line-height:1.45}.comparison-tray__items button{border:0;padding:0;background:transparent;color:var(--color-accent);font-weight:800}.comparison-tray__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem}.comparison-tray__compare{text-decoration:none}.comparison-tray__compare[aria-disabled=true]{pointer-events:none;opacity:.62}.vendor-detail{--page-gutter: clamp(1.25rem, 3vw, 3rem);display:grid;gap:1.25rem;min-height:100vh;padding:0 0 var(--page-gutter)}.vendor-detail-nav{display:flex;justify-content:space-between;gap:1rem}.vendor-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,26rem);gap:1rem;align-items:stretch}.vendor-profile-hero__copy,.vendor-profile-summary,.vendor-detail-panel{border:1px solid var(--color-border);border-radius:.5rem;background:#fff;box-shadow:0 10px 22px #17233f14}.vendor-profile-hero__copy{display:grid;align-content:start;gap:1rem;padding:clamp(1.25rem,3vw,2rem)}.vendor-profile-hero__copy h1{margin-bottom:0;font-size:clamp(2.35rem,4vw,4.25rem)}.vendor-profile-hero__former,.vendor-profile-hero__copy .hero-copy,.vendor-detail-panel p,.vendor-detail-muted,.clinical-site p,.certification-list span{margin:0;color:var(--color-text-muted);line-height:1.6}.vendor-claim-badge{width:fit-content;margin:-.2rem 0 0;border:1px solid var(--color-border);border-radius:.35rem;padding:.35rem .55rem;color:var(--color-text-muted);font-size:.78rem;font-weight:800;text-transform:uppercase}.vendor-claim-badge--pending{border-color:#d8b96c;background:#fff8e6;color:#7b5b12}.vendor-claim-badge--claimed{border-color:#99cfb6;background:#effaf4;color:#216040}.vendor-profile-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.25rem}.vendor-contact-link{text-decoration:none}.vendor-profile-summary{display:grid;gap:.85rem;margin:0;padding:clamp(1rem,2vw,1.35rem)}.vendor-profile-summary div,.vendor-detail-facts div{display:grid;gap:.3rem;border-bottom:1px solid var(--color-border);padding-bottom:.85rem}.vendor-profile-summary div:last-child,.vendor-detail-facts div:last-child{border-bottom:0;padding-bottom:0}.vendor-profile-summary dt,.vendor-detail-facts dt,.vendor-detail-panel__header .eyebrow{color:#39496a;font-size:.78rem;font-weight:800;text-transform:uppercase}.vendor-profile-summary dd,.vendor-detail-facts dd{margin:0;color:var(--color-text);line-height:1.45}.vendor-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.vendor-detail-panel{display:grid;align-content:start;gap:1rem;padding:clamp(1rem,2vw,1.25rem)}.vendor-detail-panel--wide{grid-column:1 / -1}.vendor-detail-panel__header{display:grid;gap:.25rem}.vendor-detail-panel__header h2{margin-bottom:0;font-size:1.45rem}.vendor-profile-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.vendor-profile-notes section,.vendor-detail-stack section,.clinical-site{display:grid;gap:.65rem}.vendor-profile-notes h3,.vendor-detail-stack h3,.clinical-site h3{margin-bottom:0;color:var(--color-text);font-size:1rem}.vendor-detail-list,.certification-list{display:grid;gap:.7rem;margin:0;padding-left:1.15rem;color:var(--color-text-muted);line-height:1.55}.vendor-detail-facts{display:grid;gap:.85rem;margin:0}.vendor-detail-stack{display:grid;gap:1rem}.clinical-site-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.clinical-site{border:1px solid var(--color-border);border-radius:.5rem;padding:1rem;background:#fbfcff}.certification-list{list-style:none;padding-left:0}.certification-list li{display:grid;gap:.25rem;border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.certification-list li:last-child{border-bottom:0;padding-bottom:0}.vendor-contact-panel{background:linear-gradient(180deg,#fff,#f6f8ff)}.vendor-contact-email{color:var(--color-accent);font-weight:800;overflow-wrap:anywhere}.vendor-contact-button{width:fit-content;text-decoration:none}.vendor-claim-form{display:grid;gap:.75rem}.vendor-claim-form__field{display:grid;gap:.45rem;color:#36455f;font-size:.96rem;font-weight:700}.vendor-claim-button{width:fit-content;text-decoration:none}.vendor-compare-toggle{min-height:3.25rem}.vendor-comparison-page .directory-header{border-bottom:1px solid var(--cave-lavender);padding-bottom:1rem}.vendor-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem;overflow-x:auto;padding-bottom:.35rem}.vendor-comparison-card{display:grid;align-content:start;gap:0;min-width:17rem;border:1px solid var(--cave-lavender);border-radius:8px;background:#fff;box-shadow:0 10px 22px #17233f14}.vendor-comparison-card__header{display:grid;gap:.75rem;border-bottom:1px solid var(--color-border);padding:1rem}.vendor-comparison-card__header h2{margin-bottom:0;color:var(--cave-plum);font-size:1.35rem}.vendor-comparison-card__header p:not(.eyebrow){margin:0;color:var(--color-text-muted);line-height:1.55}.vendor-comparison-fact{display:grid;gap:.35rem;margin:0;border-bottom:1px solid var(--color-border);padding:.85rem 1rem}.vendor-comparison-fact:last-child{border-bottom:0}.vendor-comparison-fact dt{color:#39496a;font-size:.78rem;font-weight:800;text-transform:uppercase}.vendor-comparison-fact dd{margin:0;color:var(--color-text);line-height:1.45}.trial-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));gap:1rem}.trial-card,.trial-detail-main,.trial-linked-sites{display:grid;align-content:start;gap:1rem;border:1px solid var(--color-border);border-radius:8px;padding:1.1rem;background:#fff;box-shadow:0 10px 22px #17233f14}.trial-card__header{display:grid;gap:.55rem}.trial-card__header h2{margin-bottom:0;color:var(--color-text);font-size:1.35rem;line-height:1.2}.trial-card__header span{width:fit-content;border:1px solid rgba(34,126,86,.2);border-radius:999px;padding:.38rem .62rem;background:#ecf8f2;color:#227e56;font-size:.78rem;font-weight:800}.trial-card p,.trial-detail-main p{margin:0;color:var(--color-text-muted);line-height:1.6}.trial-card__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.trial-fact{display:grid;gap:.25rem;margin:0}.trial-fact dt{color:#39496a;font-size:.78rem;font-weight:800;text-transform:uppercase}.trial-fact dd{margin:0;color:var(--color-text);line-height:1.45}.trial-card__sites{display:flex;flex-wrap:wrap;gap:.5rem}.trial-card__sites span{border:1px solid rgba(86,125,255,.2);border-radius:999px;padding:.42rem .62rem;background:#f5f8ff;color:#39496a;font-size:.82rem;font-weight:700}.trial-card__sites a{border:1px solid rgba(86,125,255,.2);border-radius:999px;padding:.42rem .62rem;background:#f5f8ff;color:#39496a;font-size:.82rem;font-weight:700;text-decoration:none}.trial-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:auto}.trial-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,24rem);gap:1rem}.trial-detail-main .trial-card__facts{grid-template-columns:repeat(3,minmax(0,1fr))}.trial-linked-sites h2{margin-bottom:0;font-size:1.35rem}.trial-linked-sites article{display:grid;gap:.3rem;border-top:1px solid var(--color-border);padding-top:.85rem}.trial-linked-sites strong{color:var(--color-text);line-height:1.3}.trial-linked-sites span,.trial-linked-sites small{color:var(--color-text-muted);line-height:1.45}.launch-tier-control,.site-tier-control{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.launch-tier-control__buttons{display:flex;flex-wrap:wrap;gap:.5rem}.launch-tier-control button,.site-tier-control button{border:1px solid var(--color-border);border-radius:8px;padding:.55rem .8rem;background:#fff;color:var(--color-text-muted);font-weight:800}.launch-tier-control button[aria-pressed=true],.site-tier-control button[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.launch-tier-control p{flex:1 1 18rem;margin:0;color:var(--color-text-muted);font-size:.92rem;line-height:1.45}.comparison-tray__gate{margin:0;padding:.7rem .8rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-accent-soft);color:var(--color-accent);font-size:.9rem;font-weight:700;line-height:1.45}.vendor-comparison-page .launch-tier-control,.site-comparison-page .site-tier-control{margin-bottom:1rem}.site-comparison-trials{display:grid;gap:.5rem}.site-comparison-trials a{color:var(--color-accent);font-weight:700;line-height:1.35;text-decoration:none}@media (max-width: 720px){.auth-stage{padding:1.25rem 1rem 2rem}.auth-stage__inner{gap:1.25rem}.auth-stage__brand-lockup{gap:.55rem}.auth-brand{width:4.5rem;height:3rem}.auth-stage__copy{max-width:24rem}.auth-field-grid--split,.register-steps,.dashboard-grid,.directory-filter-grid,.community-entry-grid,.vendor-results,.comparison-tray__items,.vendor-profile-hero,.vendor-detail-grid,.vendor-profile-notes,.clinical-site-list,.trial-card__facts,.trial-detail-layout,.trial-detail-main .trial-card__facts,.contribution-shell{grid-template-columns:1fr}.register-steps__item button{justify-content:flex-start}.dashboard-header,.dashboard-hero,.dashboard-callout,.directory-header,.vendor-detail-nav,.directory-toolbar__footer{align-items:flex-start;flex-direction:column}.directory-search__row{grid-template-columns:1fr}.directory-search__row .ui-button{width:100%}.vendor-card__facts div{grid-template-columns:1fr;gap:.25rem}}@media (max-width: 420px){h1{font-size:2.25rem;line-height:1.08}.auth-stage{padding:1rem .85rem 1.5rem}.auth-stage__inner{gap:1rem}.auth-stage__eyebrow{font-size:.74rem}.ui-input,.auth-submit{min-height:3.35rem;border-radius:.85rem}.register-actions{flex-direction:column}.register-actions .ui-button{width:100%}.auth-switch-row{line-height:1.5}}@media (prefers-reduced-motion: no-preference){.auth-stage__inner{animation:auth-stage-rise .3s ease both}}@keyframes auth-stage-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}:root{--cave-teal: #06678d;--cave-sky: #05a5cf;--cave-periwinkle: #b9e0f7;--cave-cream: #fff6dc;--cave-forest: #3e9052;--cave-emerald: #52ba6b;--cave-lime: #dee948;--cave-plum: #5b2076;--cave-violet: #8034bf;--cave-lavender: #dfcce4;--cave-magenta: #c6006f;--cave-hotpink: #eb539e;--cave-lightpink: #f2c5dc;--cave-dark: #0d1f24;--cave-bg: #eef5f8;--cave-border: #ccdde4;--cave-text: #0d2b33;--cave-muted: #4a6670;font-family:Inter,Avenir Next,Trebuchet MS,sans-serif}body{background:var(--cave-bg);color:var(--cave-text)}h1,h2,h3,.cave-nav__link,.landing-stat strong,.search-result-card h2,.vendor-card h2{font-family:Space Grotesk,Inter,sans-serif}svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;fill:none}.auth-brand-logo{display:block;width:min(13rem,70vw);height:auto}.cave-page,.vendor-directory--branded,.dashboard-layout{background:var(--cave-bg)}.dashboard-layout>:not(.cave-nav),.contribution-page>:not(.cave-nav),.community-board-page>:not(.cave-nav),.vendor-directory:not(.search-page)>:not(.cave-nav),.vendor-detail>:not(.cave-nav){margin-inline:var(--page-gutter)}.cave-nav{position:sticky;top:0;z-index:1000;border-bottom:1px solid #e0e8ed;background:#fff;box-shadow:0 1px 8px #0000000f}.cave-nav__inner{display:flex;align-items:center;width:min(100%,1600px);min-height:64px;margin:0 auto;padding:.35rem clamp(1rem,3vw,2.5rem)}.cave-nav__logo{display:inline-flex;align-items:center;line-height:1;text-decoration:none}.cave-nav__logo img{display:block;width:auto;height:52px;max-width:12rem;object-fit:contain}.cave-nav__spacer{flex:1}.cave-nav__links{display:flex;align-items:center;gap:.4rem}.cave-nav__link,.cave-nav__login,.cave-nav__signup{display:inline-flex;align-items:center;justify-content:center;height:2.35rem;border-radius:8px;border:1.5px solid transparent;padding:0 1rem;background:transparent;font-size:.88rem;font-weight:700;line-height:1;text-decoration:none;white-space:nowrap}.cave-nav__link--sites{color:var(--cave-magenta)}.cave-nav__link--sites:hover,.cave-nav__link--sites.active{border-color:var(--cave-hotpink)}.cave-nav__link--vendors{color:var(--cave-plum)}.cave-nav__link--vendors:hover,.cave-nav__link--vendors.active{border-color:var(--cave-violet)}.cave-nav__link--trials{color:var(--cave-forest)}.cave-nav__link--trials:hover,.cave-nav__link--trials.active{border-color:var(--cave-emerald)}.cave-nav__link--community{color:var(--cave-teal)}.cave-nav__link--community:hover,.cave-nav__link--community.active{border-color:var(--cave-sky)}.cave-nav__link--contribute{color:var(--cave-rust)}.cave-nav__link--contribute:hover,.cave-nav__link--contribute.active{border-color:var(--cave-rust)}.cave-nav__divider{width:1px;height:1.4rem;margin:0 .4rem;background:#dde4ea}.cave-nav__login{color:var(--cave-teal)}.cave-nav__login:hover{color:var(--cave-sky)}.cave-nav__signup{background:var(--cave-teal);color:#fff}.cave-nav__signup:hover{background:var(--cave-sky)}.landing-hero{padding:clamp(4rem,8vw,5.8rem) clamp(1.25rem,3vw,2.5rem) clamp(3.25rem,7vw,5rem);text-align:center;background:linear-gradient(135deg,#fff6dc,#ede8d8 16%,#ddf0f7 54%,#c8e8f4)}.cave-eyebrow,.eyebrow{color:var(--cave-teal);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.landing-hero h1{max-width:52rem;margin:1.1rem auto 1.25rem;color:var(--cave-dark);font-size:clamp(2.6rem,6vw,3.75rem);line-height:1.08}.landing-hero h1 span{color:var(--cave-teal)}.landing-hero p{max-width:38rem;margin:0 auto 2.6rem;color:var(--cave-muted);font-size:1.08rem;line-height:1.7}.landing-hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;width:min(100%,58rem);margin:1.1rem auto 0}.landing-hero__actions a{display:inline-flex;align-items:center;justify-content:center;min-height:2.65rem;border:1.5px solid rgba(13,99,102,.22);border-radius:8px;padding:.65rem 1rem;background:#ffffffad;color:var(--cave-teal);font-weight:800;line-height:1.1;text-decoration:none}.landing-hero__actions a:hover{border-color:var(--cave-sky);background:#fff}.landing-hero__actions .landing-hero__primary{border-color:var(--cave-teal);background:var(--cave-teal);color:#fff}.landing-hero__actions .landing-hero__primary:hover{background:var(--cave-sky)}.landing-search,.section-search{display:flex;align-items:center;gap:.5rem}.landing-search{width:min(100%,38rem);margin:0 auto;padding:.4rem;border:1.5px solid #b8d0dc;border-radius:12px;background:#fff;box-shadow:0 4px 20px #06678d1f}.landing-search input{flex:1;min-width:0;border:0;outline:0;padding:.7rem .8rem;color:var(--cave-text);background:transparent}.landing-search button,.section-search button{border:0;border-radius:9px;background:var(--cave-sky);color:#fff;font-weight:700}.landing-search button{min-height:2.7rem;padding:0 1.7rem}.landing-search button:hover{background:var(--cave-teal)}.landing-stats{padding:2rem clamp(1rem,3vw,2.5rem);background:var(--cave-teal)}.landing-stats__inner{display:grid;grid-template-columns:repeat(4,minmax(9rem,1fr));width:min(100%,920px);margin:0 auto}.landing-stat{display:grid;gap:.45rem;justify-items:center;padding:0 1.25rem;border-right:1px solid rgba(255,255,255,.2);color:#ffffffc7;text-align:center}.landing-stat:last-child{border-right:0}.landing-stat strong{color:var(--cave-lime);font-size:1.9rem;line-height:1}.landing-stat span{font-size:.82rem}.landing-features,.landing-audience{padding:clamp(3.5rem,7vw,4.75rem) clamp(1.25rem,3vw,2.5rem)}.landing-features{background:#fff}.landing-audience{background:var(--cave-cream)}.landing-section-header{max-width:42rem;margin:0 auto 2.7rem;text-align:center}.landing-section-header h2{margin-bottom:.5rem;color:var(--cave-dark);font-size:clamp(1.8rem,4vw,2rem)}.landing-section-header p{margin:0;color:var(--cave-muted)}.landing-feature-grid,.landing-audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:min(100%,1280px);margin:0 auto;gap:1.25rem}.landing-feature-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.landing-feature,.audience-card{border:1px solid var(--cave-border);border-radius:8px;background:#fff}.landing-feature{display:flex;flex-direction:column;min-height:19rem;padding:2rem 1.8rem 1.8rem;border-top:4px solid}.landing-feature--sites{border-top-color:var(--cave-hotpink)}.landing-feature--vendors{border-top-color:var(--cave-violet)}.landing-feature--community{border-top-color:var(--cave-sky)}.landing-feature--trials{border-top-color:var(--cave-emerald)}.landing-feature--contribute{border-top-color:var(--cave-rust)}.landing-feature__icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;min-height:2.75rem;margin-bottom:1.45rem;border-radius:999px;overflow:hidden}.landing-feature--sites .landing-feature__icon{background:#eb539e1f;color:var(--cave-magenta)}.landing-feature--vendors .landing-feature__icon{background:#8034bf1a;color:var(--cave-plum)}.landing-feature--community .landing-feature__icon{background:#20aad51f;color:var(--cave-teal)}.landing-feature--trials .landing-feature__icon{background:#52ba6b24;color:var(--cave-forest)}.landing-feature--contribute .landing-feature__icon{background:#ac472c1f;color:var(--cave-rust)}.landing-feature__icon svg{display:block;width:1.2rem;height:1.2rem}.landing-feature p,.landing-feature h3,.landing-feature span{margin:0}.landing-feature p{color:var(--cave-teal);font-size:.73rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.landing-feature h3{margin-top:.55rem;color:var(--cave-dark);font-size:1.18rem}.landing-feature span{flex:1;margin-top:.7rem;color:var(--cave-muted);line-height:1.65}.landing-feature a,.vendor-card__detail-link,.dashboard-card__link{align-self:flex-start;margin-top:1.3rem;border:1.5px solid currentColor;border-radius:8px;padding:.62rem 1.1rem;font-weight:800;text-decoration:none}.landing-feature--sites a{color:var(--cave-magenta)}.landing-feature--vendors a,.vendor-card__detail-link{color:var(--cave-plum)}.landing-feature--community a{color:var(--cave-teal)}.landing-feature--trials a{color:var(--cave-forest)}.landing-feature--contribute a{color:var(--cave-rust)}.audience-card{padding:1.7rem}.audience-card--sites{background:#fce8f1;border-color:#c6006f33}.audience-card--vendors{background:#ede6f7;border-color:#8034bf38}.audience-card--trials{background:#e4f6fb;border-color:#05a5cf40}.audience-card--community{background:#eef8ef;border-color:#3e905240}.audience-card span{display:inline-flex;margin-bottom:.85rem;border-radius:999px;padding:.25rem .75rem;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.audience-card--sites span{background:#c6006f1f;color:var(--cave-magenta)}.audience-card--vendors span{background:#5b20761f;color:var(--cave-plum)}.audience-card--trials span{background:#05a5cf24;color:var(--cave-teal)}.audience-card h3{color:var(--cave-dark)}.audience-card p{margin-bottom:0;color:var(--cave-muted);line-height:1.6}.search-shell{width:min(100%,1600px);margin:0 auto}.section-search{padding:.9rem clamp(1rem,2vw,2rem);border-bottom:1px solid var(--section-border);background:var(--section-bar)}.section-search label{display:flex;align-items:center;flex:1;min-width:0;gap:.6rem;border:1.5px solid var(--section-border);border-radius:10px;background:#fff;padding:.56rem .9rem;color:#7a9aa6}.section-search__location{max-width:17rem}.section-search svg{width:1rem;height:1rem;flex:0 0 auto}.section-search input{width:100%;min-width:0;border:0;outline:0;color:var(--cave-text)}.section-search button{display:grid;place-items:center;width:2.65rem;height:2.5rem;background:var(--section-accent)}.search-body{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:calc(100vh - 121px)}.search-filters{border-right:1px solid var(--section-border);background:#fff;padding:1.25rem 0}.search-filters__header,.filter-block{padding:.75rem 2rem}.search-filters__header{display:flex;align-items:center;justify-content:space-between;color:var(--cave-text);font-size:.86rem}.search-filters__header button{border:0;background:transparent;color:#9bb0ba;font-size:.76rem}.filter-block{border-top:1px solid var(--section-border)}.filter-block h2{margin:0 0 .65rem;color:var(--section-primary);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase}.filter-option{display:flex;align-items:center;gap:.55rem;padding:.25rem 0;color:var(--cave-muted);font-size:.82rem}.filter-option__box{display:grid;place-items:center;width:.95rem;height:.95rem;border:1.5px solid var(--section-border);border-radius:3px}.filter-option__box.checked{border-color:var(--section-accent);background:var(--section-accent)}.filter-option__box.checked:after{content:"";width:.35rem;height:.55rem;border-right:2px solid #ffffff;border-bottom:2px solid #ffffff;transform:rotate(45deg) translateY(-1px)}.search-results{padding:1.25rem clamp(1rem,2vw,2rem)}.search-results__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;color:var(--cave-text)}.search-results__actions{display:flex;gap:.5rem}.search-results__actions button,.search-result-card__actions button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cave-border);border-radius:8px;background:#fff;color:var(--cave-muted);font-weight:700}.search-results__actions button{min-height:2.5rem;padding:0 .9rem}.search-results__actions svg,.search-result-card__actions svg{width:1rem;height:1rem}.search-result-card{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.75rem;border:1px solid var(--section-border);border-radius:8px;background:#fff;padding:1.1rem 1.25rem}.search-result-card h2{margin:.25rem 0 .45rem;color:var(--section-primary);font-size:1rem;line-height:1.35}.search-result-card p{margin:0 0 .7rem;color:var(--cave-muted);font-size:.86rem}.search-result-card__meta{display:inline-flex;border:1px solid var(--section-border);border-radius:999px;background:var(--section-soft);padding:.2rem .75rem;color:var(--section-primary);font-size:.74rem;font-weight:800}.search-result-card__tags{display:flex;flex-wrap:wrap;gap:.4rem}.search-result-card__tags span{border:1px solid var(--section-border);border-radius:5px;background:var(--section-soft);padding:.18rem .55rem;color:var(--cave-muted);font-size:.75rem}.search-result-card__actions{display:flex;flex-direction:column;gap:.5rem}.search-result-card__actions button{width:2rem;height:2rem}.search-page--sites{--section-primary: var(--cave-magenta);--section-accent: var(--cave-hotpink);--section-bar: #f9d2e3;--section-border: #f0ccd8;--section-soft: #fdf0f5;background:#fdf5f9}.search-page--trials{--section-primary: var(--cave-forest);--section-accent: var(--cave-emerald);--section-bar: #bae0c6;--section-border: #c8e6cc;--section-soft: #f0faf2;background:#f3faf4}.search-page--vendors{--section-primary: var(--cave-plum);--section-accent: var(--cave-violet);--section-bar: #dfcce4;--section-border: var(--cave-lavender);--section-soft: #f5eef8;background:#fbf7fc}.search-page.vendor-directory{display:block;min-height:100vh;padding:0}.section-search-bar{display:flex;align-items:center;gap:.5rem;width:min(100%,1600px);margin:0 auto;border-bottom:1px solid var(--section-border);padding:.88rem 2rem;background:var(--section-bar)}.section-search-field{display:flex;align-items:center;gap:.65rem;flex:1;min-width:0;border:1.5px solid var(--section-border);border-radius:10px;padding:.58rem 1rem;background:#fff;color:var(--color-text-muted);transition:border-color .15s ease}.section-search-field:focus-within{border-color:var(--section-accent)}.section-search-field input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--cave-text);font:inherit;font-size:.9rem}.section-search-field input::placeholder{color:var(--cave-muted)}.section-search-submit{min-width:5.5rem;min-height:2.55rem;border:0;border-radius:10px;background:var(--section-accent);color:#fff;font-weight:800}.section-search-submit:hover{background:var(--section-primary)}.section-directory-body{display:flex;align-items:flex-start;width:min(100%,1600px);min-height:calc(100vh - 121px);margin:0 auto}.section-filter-rail{flex:0 0 260px;min-height:calc(100vh - 121px);border-right:1px solid var(--section-border);padding:1.25rem 0;background:#fff}.filter-header{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.25rem 2rem .9rem}.filter-header span{color:var(--cave-text);font-size:.82rem;font-weight:800}.clear-filters{border:0;padding:0;background:transparent;color:var(--cave-muted);font-size:.75rem}.clear-filters:hover{color:var(--section-primary);text-decoration:underline}.section-filter-grid{display:grid;gap:0}.search-page .filter-section{border-top:1px solid var(--section-border);padding:.8rem 1rem .8rem 2rem}.search-page .filter-section-label{display:block;margin-bottom:.55rem;color:var(--section-primary);font-size:.69rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.section-select{width:100%;min-height:2.35rem;border:1px solid var(--section-border);border-radius:8px;padding:.5rem .75rem;background:var(--section-soft);color:var(--cave-text);font:inherit;font-size:.82rem}.section-select:focus{outline:none;border-color:var(--section-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--section-accent) 16%,transparent)}.section-results{display:grid;gap:1rem;flex:1;min-width:0;padding:1.25rem 2rem 2rem 1.75rem}.section-results-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-results-header p,.section-results-header span{margin:0;color:var(--cave-text);font-size:.94rem;font-weight:800}.section-results-header span{color:var(--cave-muted);font-size:.82rem;font-weight:700}.directory-pagination{display:flex;align-items:center;justify-content:space-between;gap:.85rem;border:1px solid var(--section-border);border-radius:8px;padding:.75rem .85rem;background:var(--section-soft)}.directory-pagination>span{color:var(--cave-muted);font-size:.82rem;font-weight:700}.directory-pagination label{display:inline-flex;align-items:center;gap:.55rem;color:var(--section-primary);font-size:.72rem;font-weight:800;text-transform:uppercase}.directory-pagination .section-select{width:5.5rem;min-height:2rem;background:#fff}.directory-pagination__actions{display:inline-flex;gap:.5rem}.search-page .comparison-tray{border-color:var(--section-border);box-shadow:none}.search-page .comparison-tray__header h2,.search-page .comparison-tray__header span{color:var(--section-primary)}.search-page .comparison-tray__header span,.search-page .comparison-tray__items li{border-color:var(--section-border);background:var(--section-soft)}.search-page .directory-status{border-color:var(--section-border);border-radius:12px;box-shadow:none}.search-page .vendor-results,.search-page .trial-card-grid{display:grid;grid-template-columns:1fr;gap:.75rem}.search-page .vendor-card,.search-page .trial-card{border-color:var(--section-border);border-radius:12px;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.search-page .vendor-card:hover,.search-page .trial-card:hover{border-color:var(--section-accent);box-shadow:0 4px 16px color-mix(in srgb,var(--section-primary) 10%,transparent);transform:translateY(-1px)}.search-page .vendor-card h2,.search-page .trial-card__header h2,.search-page .vendor-card__tier,.search-page .trial-fact dt{color:var(--section-primary)}.search-page .vendor-card__tier,.search-page .vendor-tag,.search-page .trial-card__header span,.search-page .trial-card__sites span,.search-page .trial-card__sites a{border-color:var(--section-border);background:var(--section-soft)}.search-page .vendor-card__detail-link,.search-page .vendor-card__select,.search-page .trial-card__actions .ui-button,.search-page .trial-card__actions .vendor-card__detail-link{border-color:var(--section-accent);color:var(--section-primary);background:#fff}.search-page .trial-card__actions .ui-button--primary,.search-page .vendor-card__select[aria-pressed=true]{background:var(--section-accent);color:#fff}.search-page .launch-tier-control{display:grid;gap:.55rem}.search-page .launch-tier-control__buttons{display:grid;gap:.45rem}.search-page .launch-tier-control__buttons button{min-height:2.2rem;border:1px solid var(--section-border);border-radius:8px;background:#fff;color:var(--cave-muted);font-weight:800}.search-page .launch-tier-control__buttons button[aria-pressed=true]{border-color:var(--section-accent);background:var(--section-soft);color:var(--section-primary)}.search-page .launch-tier-control p{margin:0;color:var(--cave-muted);font-size:.78rem;line-height:1.45}.vendor-directory--branded{--vendor-primary: var(--cave-plum);--vendor-accent: var(--cave-violet);--vendor-soft: #f5eef8}.vendor-directory--branded .directory-header{border-radius:0;border:0;border-bottom:1px solid var(--cave-lavender);background:linear-gradient(135deg,#fff,#f5eef8);box-shadow:none}.vendor-directory--branded .directory-header h1,.vendor-directory--branded .vendor-card h2,.vendor-directory--branded .vendor-card__tier,.vendor-directory--branded .vendor-card__note strong{color:var(--vendor-primary)}.vendor-directory--branded .directory-toolbar{border-color:var(--cave-lavender);border-radius:8px;background:#fff}.vendor-directory--branded .directory-search__row .ui-input:focus,.vendor-directory--branded .ui-input:focus{border-color:var(--vendor-accent);box-shadow:0 0 0 4px #8034bf1f}.vendor-directory--branded .vendor-card{border-radius:8px;border-color:var(--cave-lavender);border-top:4px solid var(--vendor-accent);box-shadow:none}.vendor-directory--branded .vendor-card:hover{border-color:var(--vendor-accent);box-shadow:0 6px 24px #5b207614}.vendor-directory--branded .vendor-tag,.vendor-directory--branded .vendor-card__tier,.vendor-directory--branded .vendor-card__note{border-color:var(--cave-lavender);background:var(--vendor-soft)}.dashboard-header--with-nav{margin-top:1rem}@media (max-width: 1180px){.landing-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 880px){.cave-nav__inner,.cave-nav__links{align-items:flex-start}.cave-nav__inner{flex-direction:column;gap:.65rem}.cave-nav__spacer,.cave-nav__divider{display:none}.cave-nav__links{width:100%;flex-wrap:wrap}.landing-stats__inner,.landing-feature-grid,.landing-audience-grid,.search-body,.admin-import-controls{grid-template-columns:1fr}.admin-import-progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-stat{border-right:0;border-bottom:1px solid rgba(255,255,255,.2);padding:1rem 0}.landing-stat:last-child{border-bottom:0}.section-search{flex-wrap:wrap}.section-search__location{max-width:none}.section-search button{width:100%}.search-filters{border-right:0;border-bottom:1px solid var(--section-border)}.directory-pagination{flex-wrap:wrap}}@media (max-width: 560px){.landing-search,.search-result-card{flex-direction:column;align-items:stretch}.landing-search button{width:100%}.search-result-card__actions{flex-direction:row}.directory-pagination,.directory-pagination__actions{align-items:stretch;flex-direction:column}.directory-pagination label,.directory-pagination .section-select,.directory-pagination__actions .ui-button{width:100%}.admin-import-current-run__header{flex-direction:column}.admin-import-progress-metrics{grid-template-columns:1fr}}
