.topic-finder-page{max-width:1080px;margin-inline:auto;padding-bottom:2rem}
.finder-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr);gap:clamp(1.2rem,4vw,3rem);align-items:start;margin-top:1.5rem}
.topic-finder-page .finder-panel{margin:0;min-width:0;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:clamp(1rem,3vw,1.8rem)}
.finder-panel h1{font-family:Fraunces,Georgia,serif;font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.15;margin:0 0 .6rem}
.finder-panel .intro,.finder-panel .opening-note,.finder-footnote{color:var(--ink-soft)}
.finder-panel label{display:block;font-size:.9rem;font-weight:600;margin-bottom:.4rem}
.finder-panel input,.finder-panel select{font:inherit;width:100%;min-width:0;min-height:44px;padding:.65rem .8rem;border:1px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink)}
.finder-panel .search-row{display:flex;gap:.55rem}
.finder-panel button{font:inherit;min-height:44px;padding:.6rem .8rem;border:1px solid var(--line);border-radius:9px;background:var(--card2);color:var(--ink);cursor:pointer}
.finder-panel .search-row button{flex:0 0 48px;background:var(--accent);color:var(--accent-on);border:0}
.finder-panel .search-row svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}
.finder-panel .filters{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}
.finder-panel .result-heading{display:flex;justify-content:space-between;gap:.6rem;align-items:center;margin-top:1.3rem}
.finder-panel .result-heading h2{font-size:1.1rem;margin:0}.finder-panel #count{font-size:.9rem;color:var(--ink-soft)}
.finder-panel #results{list-style:none;padding:0;margin:.6rem 0;overflow:visible}
.finder-panel .topic{position:relative;display:block;border-bottom:1px solid var(--line);border-left:3px solid transparent;border-radius:7px;text-decoration:none;padding:.9rem 2rem .9rem .6rem}
.finder-panel .topic:hover{background:var(--card2);border-left-color:var(--accent-text)}
.finder-panel .topic-meta{display:block;font-size:.8rem;color:var(--accent-text);font-weight:650;margin-bottom:.25rem}
.finder-panel .topic-meta.english{color:var(--subject-english)}.finder-panel .topic-meta.science{color:var(--subject-science)}
.finder-panel .topic-title{font-weight:600;color:var(--accent-text);line-height:1.35;display:block}.finder-panel .topic-arrow{position:absolute;right:.55rem;top:1.3rem;color:var(--ink-soft)}
.finder-panel .show-more{width:100%}.finder-panel .website-search{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.75rem;border:1px solid var(--line);border-radius:9px;font-weight:600;text-decoration:none}
.finder-panel .opening-note{font-size:.85rem}.finder-panel .empty,.finder-panel .error{padding:1rem;border:1px solid var(--line);border-radius:9px;background:var(--card2)}
.finder-panel .empty h2{font-size:1.1rem}.finder-help{min-width:0}.finder-help h2{font-family:Fraunces,Georgia,serif;font-size:1.7rem;margin-top:0}.finder-help details{border-bottom:1px solid var(--line);padding:1rem 0}.finder-help summary{font-weight:600;cursor:pointer}.finder-help a{overflow-wrap:anywhere}
.finder-help .app-action{font:inherit;min-height:44px;padding:.65rem 1rem;border:1px solid var(--line);border-radius:9px;background:var(--accent);color:var(--accent-on);cursor:pointer;margin-bottom:.6rem}
.finder-help #app-status,.finder-help #app-mode,.finder-footnote{font-size:.9rem}.finder-footnote{border-top:1px solid var(--line);padding-top:1rem;margin-top:1.2rem}
.topic-finder-page :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.topic-finder-page [hidden]{display:none!important}
@media(max-width:760px){.finder-layout{grid-template-columns:1fr}}
@media(forced-colors:active){.finder-panel .topic,.finder-help .app-action{border:1px solid CanvasText}}

.finder-panel .result-pages{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;margin-top:1rem}
.finder-panel .result-pages p{margin:0;text-align:center;font-size:.85rem;color:var(--ink-soft)}
.finder-panel .result-pages button:disabled{opacity:.5;cursor:default}
.finder-panel #results-heading:focus{outline:3px solid var(--accent);outline-offset:3px}

@media(max-width:380px){.finder-panel .filters{grid-template-columns:1fr}}

.finder-install{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:1.25rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.finder-install p{margin:0;font-size:.9rem}.finder-install #install-status{color:var(--ink-soft);flex-basis:100%}
.finder-install .app-action{font:inherit;min-height:44px;padding:.65rem 1rem;border:1px solid var(--line);border-radius:9px;background:var(--accent);color:var(--accent-on);cursor:pointer}
.finder-install .app-action:disabled{opacity:.65;cursor:wait}.finder-install #install-fallback{flex-basis:100%;border-top:1px solid var(--line);padding-top:.8rem}
.finder-install #install-fallback p{margin-bottom:.6rem}.finder-install a{overflow-wrap:anywhere}
@media(forced-colors:active){.finder-install .app-action{border:1px solid CanvasText}}
