/* Bounded addition within the published Signal interface. */
.trial-promo{box-sizing:border-box;min-width:0;padding:1rem;border:1px solid var(--control-line);border-radius:10px;background:var(--surface-soft);color:var(--ink)}
.trial-explorer{margin:1rem 0;grid-column:1/-1}
.trial-explorer{position:relative}
.trial-explorer[hidden]{display:none!important}
.trial-explorer>h2{padding-right:3rem}
.trial-dismiss{position:absolute;top:.5rem;right:.5rem;display:grid;place-items:center;width:44px;min-height:44px;padding:0;border:1px solid var(--control-line);border-radius:8px;background:var(--action);color:var(--on-action);font:inherit;font-size:1.5rem;cursor:pointer}
.trial-dismiss:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.trial-promo :is(h2,h3){margin:0 0 .75rem;font-size:1.125rem;line-height:1.4}
.trial-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:.6rem}
html:root body a.trial-action,html:root body a.trial-action:visited{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem .85rem;border:1px solid var(--control-line);border-radius:7px;background:var(--action);color:var(--on-action);font:inherit;font-size:.9375rem;font-weight:600;line-height:1.4;text-align:center;text-decoration:none;white-space:normal}
html:root .trial-action:hover{text-decoration:underline;text-underline-offset:3px}
.trial-conditions,.trial-disclosure{margin:.75rem 0 0;font-size:.8125rem;line-height:1.55}
.trial-disclosure{color:var(--muted)}
.trial-popup{margin:0 0 1.25rem;padding:1rem}
.trial-popup .trial-actions{display:grid;grid-template-columns:minmax(0,1fr)}
.trial-popup .trial-conditions,.trial-popup .trial-disclosure{font-size:.8125rem}
.explorer-page .workspace:has(#filters[hidden])>.trial-explorer{display:none}
@media(min-width:1100px){
 .explorer-page .workspace:has(>.trial-explorer){grid-template-rows:repeat(5,max-content) minmax(0,1fr)}
 .explorer-page .workspace>.trial-explorer{grid-column:2;grid-row:3;margin:0 0 12px}
 .explorer-page .workspace:has(>.trial-explorer) #criteria-panel{grid-row:2/7}
 .explorer-page .workspace:has(>.trial-explorer) #filters>.catalogue-filter-rail{grid-row:2/7}
 .explorer-page .workspace:has(>.trial-explorer) #discovery-tools{grid-row:4}
 .explorer-page .workspace:has(>.trial-explorer) .results-heading{grid-row:5}
 .explorer-page .workspace:has(>.trial-explorer) #catalogue{grid-row:6}
}
@media(max-width:650px){.trial-explorer .trial-actions>a{flex:1 1 100%}}

.trial-promo .trial-actions>article{flex:1 1 18rem;min-width:0;padding:1rem;border:1px solid var(--line,#d8dedb);border-radius:.75rem}.trial-promo .trial-actions>article h3{margin-top:0}.trial-promo .trial-actions>article>a{display:inline-flex;margin:.3rem .5rem .3rem 0}

.trial-nextory-catalogue{width:fit-content;max-width:100%;margin-block:0 1rem}
.trial-nextory-catalogue .trial-action:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media(max-width:650px){.trial-nextory-catalogue,.trial-nextory-catalogue .trial-action{width:100%}}

/* A shared card layout also accommodates future approved partners. */
html:root body .trial-explorer.partner-promo {
 display:grid;
 grid-template-columns:minmax(0,1fr) 44px;
 align-items:center;
 width:min(100%,840px);
 max-width:100%;
 margin:0 auto 24px;
 padding:16px;
 gap:12px;
 border:1px solid var(--control-line);
 border-radius:12px;
 text-align:left;
}
html:root body .partner-promo>h2 {
 grid-column:1;
 grid-row:1;
 margin:0!important;
 padding:0;
 font-size:1.25rem;
 line-height:1.3;
}
html:root[data-comparator-design] body .trial-explorer.partner-promo>.trial-dismiss {
 position:static;
 grid-column:2;
 grid-row:1;
}
html:root body .partner-promo>.partner-intro {
 grid-column:1/-1;
 margin:0;
 font-size:.9375rem;
 line-height:1.55;
 color:var(--muted);
}
html:root body .partner-grid {
 grid-column:1/-1;
 display:grid;
 grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));
 gap:12px;
}
html:root body .partner-card {
 min-width:0;
 display:grid;
 grid-template-rows:auto 1fr auto;
 gap:12px;
 padding:16px;
 border:1px solid var(--control-line);
 border-radius:8px;
 background:var(--surface);
}
html:root body .partner-card .partner-logo {
 display:flex;
 align-items:center;
 width:132px;
 height:48px;
 box-sizing:border-box;
 padding:0;
 margin:0;
 background:transparent;
}
html:root body .partner-logo img {display:block;width:132px;height:48px;object-fit:contain;object-position:left center}
html:root[data-theme=dark] body .partner-logo img {filter:brightness(0) invert(1)}
html:root body .partner-card>p {margin:0;font-size:.9375rem;line-height:1.5;color:var(--muted)}
html:root body .partner-card>.trial-action {width:100%;margin:0;min-height:44px;font-size:.9375rem}
html:root body .partner-promo .trial-action:focus-visible {outline:3px solid var(--focus);outline-offset:3px}
html:root body .partner-promo>.partner-disclosure {
 grid-column:1/-1;
 margin:0;
 font-size:.75rem;
 line-height:1.5;
 color:var(--muted);
}
html:root body .partner-promo>.comparator-trial-terms {grid-column:1/-1;width:100%;margin:0}
@media(max-width:650px) {
 html:root body .trial-explorer.partner-promo {padding:12px;gap:10px}
 html:root body .partner-promo>h2 {font-size:1.125rem}
 html:root body .partner-card {padding:12px;gap:10px}
 html:root body .partner-card>p {font-size:.875rem}
}

/* The compact entry point remains available after closing the partner sheet. */
html:root body.has-partner-dock {padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}
html:root body .partner-dock {
 position:fixed;z-index:35;right:24px;bottom:calc(20px + env(safe-area-inset-bottom,0px));
 display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:4px;
 width:350px;max-width:calc(100% - 32px);padding:6px;
 border:1px solid var(--control-line);border-radius:12px;background:var(--surface);color:var(--ink);
 box-shadow:0 4px 20px #0002;text-align:left;
}
html:root body .partner-dock[hidden],
html:root:has(.analytics-panel:not([hidden])) body .partner-dock,
html:root:has(dialog[open]) body .partner-dock {display:none!important}
html:root body .partner-dock-open {
 display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:2px 12px;align-items:center;
 min-width:0;min-height:52px;margin:0;padding:4px 10px;border:0;border-radius:7px;
 background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer;
}
html:root body .partner-dock-open>strong {font-size:.9375rem;line-height:1.35}
html:root body .partner-dock-subtitle {grid-column:1;font-size:.75rem;line-height:1.4;color:var(--muted)}
html:root body .partner-dock-plus {grid-column:2;grid-row:1/3;color:var(--ink);font-size:1.5rem;text-align:center}
html:root body .partner-dock-dismiss,
html:root body .partner-sheet-header>.trial-dismiss {
 position:static;display:grid;place-items:center;width:44px;height:44px;min-height:44px;
 margin:0;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ink);font:inherit;font-size:1.5rem;cursor:pointer;
}
html:root body .partner-dock button:hover,
html:root body .partner-sheet-header>.trial-dismiss:hover {background:var(--surface-soft)}
html:root[data-comparator-design] body .partner-dock :is(.partner-dock-open,.partner-dock-dismiss),
html:root[data-comparator-design] body .partner-sheet-header>.trial-dismiss {border:0!important;background:transparent!important}
html:root[data-comparator-design] body .partner-dock .partner-dock-open {text-align:left}
html:root[data-comparator-design] body .partner-dock :is(.partner-dock-open,.partner-dock-dismiss):hover,
html:root[data-comparator-design] body .partner-sheet-header>.trial-dismiss:hover {background:var(--surface-soft)!important}
html:root body .partner-dock button:focus-visible,
html:root body .partner-sheet-header>.trial-dismiss:focus-visible {outline:3px solid var(--focus);outline-offset:2px}
html:root[data-comparator-design] body dialog.partner-sheet {
 position:fixed;inset:auto 24px 20px auto;box-sizing:border-box;
 width:min(720px,calc(100% - 48px));max-width:none;max-height:82dvh;margin:0;padding:0;
 border:1px solid var(--control-line);border-radius:16px;background:var(--surface-soft);color:var(--ink);
 overflow:auto;overscroll-behavior:contain;box-shadow:0 12px 48px #0004;
}
html:root[data-comparator-design] body dialog.partner-sheet::backdrop {background:#0005;backdrop-filter:none}
html:root:has(.partner-sheet[open]) {overflow:hidden}
html:root body .partner-sheet-header {
 position:sticky;top:0;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:center;
 margin:0;padding:12px 20px;border-bottom:1px solid var(--line);background:var(--surface-soft);
}
html:root body .partner-sheet-header>h2 {margin:0!important;padding:0;font-size:1.125rem;line-height:1.35;text-align:left}
html:root body .partner-sheet .trial-explorer.partner-promo {width:100%;margin:0;padding:16px 20px 20px;border:0;border-radius:0}
@media(max-width:650px) {
 html:root body .partner-dock {right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px);max-width:none}
 html:root[data-comparator-design] body dialog.partner-sheet {inset:auto 0 0;width:100%;max-height:85dvh;border-radius:16px 16px 0 0}
 html:root body .partner-sheet-header {padding:8px 16px}
 html:root body .partner-sheet .trial-explorer.partner-promo {padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px))}
}
