/* Stellar Tools Directory — front-end styles */
.st-wrap{--st-line:#e6e6e6;--st-muted:#5b6472;--st-accent:#2563eb;margin:1.5rem 0 2.5rem}
.st-heading{margin:0 0 .75rem}
.st-controls{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin-bottom:.75rem}
.st-search-box{flex:1 1 240px;min-width:200px}
.st-search{width:100%;padding:.7rem .9rem;border:1px solid var(--st-line);border-radius:10px;font-size:1rem;background:#fff}
.st-sort-box{display:flex;align-items:center;gap:.45rem}
.st-sort-label{font-size:.85rem;color:var(--st-muted);text-transform:uppercase;letter-spacing:.04em}
.st-sort{padding:.6rem .7rem;border:1px solid var(--st-line);border-radius:10px;background:#fff;font-size:.95rem}
.st-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}
.st-chip-btn{border:1px solid var(--st-line);background:#fff;color:#222;border-radius:999px;padding:.35rem .8rem;font-size:.85rem;cursor:pointer}
.st-chip-btn:hover{border-color:var(--st-accent);color:var(--st-accent)}
.st-chip-btn.is-on{background:#111;color:#fff;border-color:#111}
.st-count{font-size:.82rem;color:var(--st-muted);margin:0 0 .9rem}
.st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:1rem}
.st-card{border:1px solid var(--st-line);border-radius:14px;padding:1rem;background:#fff;display:flex;flex-direction:column;gap:.55rem;transition:box-shadow .15s ease,transform .15s ease}
.st-card:hover{box-shadow:0 6px 22px rgba(0,0,0,.08);transform:translateY(-2px)}
.st-card-top{display:flex;gap:.7rem;align-items:flex-start;position:relative}
.st-logo{width:44px;height:44px;flex:0 0 44px;border-radius:10px;background:#f4f6f8;display:flex;align-items:center;justify-content:center;overflow:hidden}
.st-logo-img{width:100%;height:100%;object-fit:cover}
.st-logo-letter{font-weight:700;font-size:1.15rem;color:#334155}
.st-head-text{flex:1 1 auto;min-width:0}
.st-name{margin:0;font-size:1.06rem;line-height:1.25}
.st-name a{text-decoration:none;color:#111}
.st-name a:hover{color:var(--st-accent)}
.st-tag{margin:.25rem 0 0;font-size:.88rem;color:var(--st-muted);line-height:1.4}
.st-badge{position:absolute;right:0;top:-4px;font-size:.68rem;background:#fff7e6;color:#8a5a00;border:1px solid #f0d9a8;border-radius:999px;padding:.12rem .45rem;white-space:nowrap}
.st-meta{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.st-chip{font-size:.74rem;background:#eef2ff;color:#3730a3;border-radius:999px;padding:.15rem .5rem}
.st-price{font-size:.78rem;color:#0f5132;background:#e8f5ee;border-radius:999px;padding:.15rem .5rem}
.st-platforms{margin:0;font-size:.78rem;color:var(--st-muted)}
.st-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-top:.5rem;border-top:1px solid #f1f1f1}
.st-stars{font-size:.85rem;color:#f59e0b;letter-spacing:.02em}
.st-stars em{font-style:normal;color:var(--st-muted);font-size:.78rem}
.st-cta{font-size:.88rem;font-weight:600;text-decoration:none;color:var(--st-accent);white-space:nowrap}
.st-cta:hover{text-decoration:underline}
.st-noresult{color:var(--st-muted)}
/* single tool page panel */
.st-detail{border:1px solid var(--st-line);border-radius:14px;padding:1rem 1.1rem;background:#fff;margin:0 0 1.5rem}
.st-detail-head{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between}
.st-detail-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;position:static}
.st-detail-meta .st-badge{position:static;top:auto}
.st-detail-meta .st-stars{font-size:1rem}
.st-cta-big{display:inline-block;background:var(--st-accent);color:#fff;border-radius:10px;padding:.6rem 1.1rem;font-size:.95rem;font-weight:600;text-decoration:none;white-space:nowrap}
.st-cta-big:hover{background:#1d4ed8;color:#fff;text-decoration:none}
.st-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem 1.2rem;margin:1rem 0 0;padding:.9rem 0 0;border-top:1px solid #f1f1f1}
.st-facts dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--st-muted);margin:0}
.st-facts dd{margin:.15rem 0 0;font-size:.92rem;color:#111}
.st-detail-note{margin:.9rem 0 0;font-size:.78rem;color:var(--st-muted);line-height:1.5}
.st-back{margin:1.75rem 0 0;font-size:.9rem}
@media (max-width:600px){.st-grid{grid-template-columns:1fr}.st-sort-box{width:100%}.st-sort{flex:1}.st-detail-head{flex-direction:column;align-items:flex-start}.st-cta-big{width:100%;text-align:center}}
