/* Compact discovery; accepted large home recommendation cards remain intact. */
html:has(.discovery-header){scroll-padding-top:calc(var(--discovery-header-height,80px) + 12px);}
.site-header:has(.discovery-header){position:sticky;top:0;z-index:40;display:block;max-width:none;width:100%;padding:0;background:var(--header-surface);backdrop-filter:blur(18px);border-bottom:1px solid var(--border);box-shadow:0 2px 8px rgb(23 32 51 / .04);}
.discovery-header-inner{display:flex;align-items:center;flex-wrap:wrap;gap:12px;max-width:1180px;margin:auto;padding:10px 20px;}
.discovery-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto;}
.site-descriptor{color:var(--muted);font-size:.875rem;white-space:nowrap;}
@media(max-width:900px){.site-descriptor{display:none;}}
.discovery-header .language-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font:inherit;font-weight:600;}
.favorite-card-shell{position:relative;display:flex;min-width:0;}
.favorite-card-shell>.tool-link-card{width:100%;padding-right:58px;}
.favorite-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;padding:10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0;}
.favorite-toggle svg{stroke:currentColor;stroke-width:1.8;fill:none;}
.favorite-toggle[aria-pressed="true"]{color:var(--favorite-active);}
.favorite-toggle[aria-pressed="true"] svg{fill:currentColor;}
.favorite-toggle:hover{background:var(--surface-muted);}
.favorite-card-shell>.favorite-toggle{position:absolute;top:8px;right:8px;}
.favorite-page-toggle{margin-block:4px;}
.home-category[data-expanded="false"] .favorite-home-shell{display:none;}
.home-category[data-expanded="false"] .favorite-home-shell[data-home-desktop-initial]{display:flex;}
.home-favorites{margin-block:20px;padding:12px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--ui-radius-card);}
.favorites-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.favorites-heading h2{margin:0;flex:1;min-width:180px;font-size:1.2rem;}
.favorites-heading button{font:inherit;min-height:44px;}
.favorites-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px;}
.discovery-result-row{display:flex;align-items:center;min-width:0;gap:2px;border-bottom:1px solid var(--border);}
.discovery-result{display:flex;align-items:center;flex:1;min-width:0;min-height:44px;padding:5px 4px;color:var(--text);text-decoration:none;line-height:1.4;overflow-wrap:anywhere;}
.discovery-result:hover,.search-result:hover{color:var(--primary);}
.discovery-storage-note{font-size:.9rem;color:var(--muted);margin:6px 0;}
.discovery-storage-note summary{cursor:pointer;min-height:44px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.discovery-help-link{color:var(--primary-hover);text-decoration:underline;text-underline-offset:3px;}
.discovery-dialog{width:min(960px,calc(100% - 32px));max-height:calc(100dvh - 32px);border:1px solid var(--border);border-radius:16px;padding:20px;color:var(--text);background:var(--surface);box-sizing:border-box;overflow:auto;}
.discovery-dialog::backdrop{background:rgb(10 25 40 / .45);}
.discovery-dialog-top{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:12px;}
.discovery-dialog-top h2{margin:0;font-size:1.35rem;}
.discovery-dialog-top button{min-width:44px;min-height:44px;}
.discovery-groups,.directory-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;}
.discovery-group h3,.directory-group h2{font-size:1rem;margin:8px 0;color:var(--text);}
.discovery-search{width:min(640px,calc(100% - 24px));}
.discovery-search label{display:block;}
.discovery-search input{width:100%;min-height:44px;margin-top:8px;font:inherit;}
.discovery-search-results .search-result{min-height:44px;display:flex;align-items:center;}
.favorite-confirm{max-width:460px;}
.favorite-confirm>button{min-height:44px;margin:4px;}
.directory-entry{min-width:0;}
.directory-entry .tool-link-card{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:none;border-radius:0;min-height:44px;padding:8px 48px 8px 0;}
.directory-entry .tool-link-body h3{font-size:1rem;margin:0;}
.directory-entry .tool-icon,.directory-entry .tool-open,.directory-entry .tool-link-body p{display:none;}
.directory-entry .tool-card-identity .tool-icon{display:grid;}
.directory-entry .tool-card-identity .tool-icon,.related-compact .tool-card-identity .tool-icon{width:44px;height:44px;flex-basis:44px;font-size:.85rem;border-radius:12px;}
.directory-entry .favorite-toggle{top:0;right:0;}
[data-directory-favorite-group]{margin-bottom:24px;}
.related-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;}
.related-compact .tool-link-card{box-shadow:none;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;padding:8px 52px 8px 0;min-height:60px;}
.related-compact .tool-link-body h3{font-size:1rem;margin:0;}
.related-compact .tool-link-body p{font-size:.85rem;margin:0;line-height:1.4;color:var(--muted);}
.related-compact .tool-open{display:none;}
.discovery-dialog :focus-visible,.favorite-toggle:focus-visible,.discovery-header :focus-visible,.home-favorites :focus-visible,.discovery-page :focus-visible{outline:3px solid var(--primary);outline-offset:2px;}
@media(max-width:700px){.discovery-groups,.directory-groups{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){
 .discovery-header-inner{padding-inline:12px;gap:4px;}
 .site-header:has(.discovery-header) .brand-logo{width:130px;max-width:100%;height:auto;}
 .discovery-header{gap:4px;}
 .discovery-header .language-button{padding:7px 8px;font-size:.9rem;}
 .home-category[data-expanded="false"] .favorite-home-shell[data-home-desktop-initial]{display:none;}
 .home-category[data-expanded="false"] .favorite-home-shell[data-home-mobile-initial]{display:flex;}
 .favorites-compact{grid-template-columns:repeat(2,minmax(0,1fr));}
 .discovery-groups,.directory-groups,.related-compact{grid-template-columns:minmax(0,1fr);}
 .discovery-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:16px;}
}
