/* The hub's own pages (home, sign-in, account, admin); everything else comes from /core/static/css/core.css. */
.page-wrap.narrow { max-width: 720px; }
.hub-logo { display: flex; align-items: center; gap: 10px; font-weight: 650; font-size: 18px; margin-bottom: 10px; }
.hub-logo img { width: 32px; height: 32px; }

/* home: every tool's projects */
.home-search { width: 220px; }
.home-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.home-card { display: flex; flex-direction: column; background: var(--panel); border: 1px solid var(--border); border-radius: 12px;
  overflow: hidden; color: inherit; text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.home-card:hover { border-color: var(--accent); box-shadow: 0 2px 10px rgba(20,20,40,.08); }
.home-card:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.home-card .thumb { display: block; width: 100%; height: 150px; object-fit: contain; background: var(--canvas); border-bottom: 1px solid var(--border); }
.home-card .thumb.none { display: flex; align-items: center; justify-content: center; }
.home-card .thumb.none img { width: 44px; height: 44px; opacity: .35; }
.home-card .meta { padding: 10px 12px 12px; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.home-card .name { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }

/* admin */
.badge.bad { background: #fde3e3; color: #b71c1c; margin-left: 4px; }
html[data-theme="dark"] .badge.bad { background: #4a1f1f; color: #ffb4b4; }
.tool-usage + .tool-usage { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--border); }
.tool-usage h3 { font-size: 14px; margin: 0 0 8px; }
td.ua { max-width: 320px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
