/* ============================================================
   App Archive / discovery engine
   ============================================================ */
.appsinsight-apps-archive { background:#f7f8fb; padding-bottom:50px; }

/* Hero */
.appsinsight-apps-hero { background:linear-gradient(180deg,#fff,#f7f8fb); border-bottom:1px solid var(--ai-app-border); padding:26px 0 28px; }
.appsinsight-apps-hero__crumbs { font-size:12.5px; color:var(--ai-app-muted); margin-bottom:12px; }
.appsinsight-apps-hero__title { margin:0 0 8px; font-size:30px; color:var(--ai-app-ink); }
.appsinsight-apps-hero__desc { max-width:760px; color:#374151; line-height:1.65; }
.appsinsight-apps-hero__stats { display:flex; gap:28px; flex-wrap:wrap; margin-top:16px; }
.appsinsight-apps-hero__stat { display:flex; flex-direction:column; font-size:12.5px; color:var(--ai-app-muted); }
.appsinsight-apps-hero__stat strong { font-size:18px; color:var(--ai-app-ink); }
.appsinsight-apps-hero__stat a { color:var(--ai-app-primary); text-decoration:none; }

.appsinsight-apps-archive__inner { padding-top:24px; }

/* Ranking table */
.appsinsight-apps-ranking { background:#fff; border:1px solid var(--ai-app-border); border-radius:var(--ai-app-radius); padding:20px; margin-bottom:22px; box-shadow:var(--ai-app-shadow); }
.appsinsight-apps-ranking__title { margin:0 0 14px; font-size:20px; }
.appsinsight-apps-ranking__table { display:flex; flex-direction:column; }
.appsinsight-apps-ranking__row { display:grid; grid-template-columns:60px 2fr 80px 1.5fr auto; gap:12px; align-items:center; padding:11px 8px; border-bottom:1px solid var(--ai-app-border); font-size:14px; }
.appsinsight-apps-ranking__row:last-child { border-bottom:0; }
.appsinsight-apps-ranking__row--head { font-size:12px; text-transform:uppercase; letter-spacing:.03em; color:var(--ai-app-muted); font-weight:700; }
.appsinsight-apps-ranking__rank { font-weight:800; color:#94a3b8; }
.appsinsight-apps-ranking__app a { color:var(--ai-app-ink); text-decoration:none; font-weight:600; }
.appsinsight-apps-ranking__rating { font-weight:700; }
.appsinsight-apps-ranking__award { color:#b45309; font-weight:600; font-size:13px; }
@media (max-width:782px){
	.appsinsight-apps-ranking__row { grid-template-columns:42px 1fr 60px; }
	.appsinsight-apps-ranking__award, .appsinsight-apps-ranking__cta { display:none; }
	.appsinsight-apps-ranking__row--head span:nth-child(4),
	.appsinsight-apps-ranking__row--head span:nth-child(5) { display:none; }
}

/* Layout: filters + grid */
.appsinsight-apps-archive__layout { display:grid; grid-template-columns:1fr; gap:24px; }
@media (min-width:992px){ .appsinsight-apps-archive__layout { grid-template-columns:260px minmax(0,1fr); align-items:start; } }
.appsinsight-apps-archive__filters { position:sticky; top:80px; }

/* Filters */
.appsinsight-apps-filters { background:#fff; border:1px solid var(--ai-app-border); border-radius:var(--ai-app-radius); padding:16px; box-shadow:var(--ai-app-shadow); }
.appsinsight-apps-filters__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.appsinsight-apps-filters__title { margin:0; font-size:16px; }
.appsinsight-apps-filters__clear { border:0; background:none; color:var(--ai-app-primary); cursor:pointer; font-size:12.5px; font-weight:600; }
.appsinsight-apps-filters__group { border:0; padding:12px 0 0; margin:0; border-top:1px solid var(--ai-app-border); }
.appsinsight-apps-filters__group legend { font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.03em; color:var(--ai-app-muted); padding:0 0 8px; }
.appsinsight-apps-filters__options { display:flex; flex-direction:column; gap:7px; max-height:210px; overflow:auto; }
.appsinsight-apps-filters__opt { display:flex; align-items:center; gap:8px; font-size:13.5px; cursor:pointer; }
.appsinsight-apps-filters__opt small { color:var(--ai-app-muted); margin-left:auto; }

/* Toolbar + grid */
.appsinsight-apps-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
.appsinsight-apps-toolbar__count { margin:0; font-weight:600; color:#374151; }
.appsinsight-apps-toolbar__sort { display:flex; align-items:center; gap:8px; font-size:13.5px; }
.appsinsight-apps-toolbar__sort select { padding:7px 10px; border-radius:8px; border:1px solid var(--ai-app-border); background:#fff; }
[data-apps-grid].is-loading { opacity:.5; pointer-events:none; transition:opacity .15s ease; }
.appsinsight-apps-empty { padding:40px; text-align:center; color:var(--ai-app-muted); background:#fff; border:1px dashed var(--ai-app-border); border-radius:12px; grid-column:1/-1; }

/* Buckets + related */
.appsinsight-apps-bucket { margin-top:34px; }
.appsinsight-apps-bucket__title { font-size:20px; margin:0 0 14px; }
.appsinsight-apps-related { margin-top:34px; background:#fff; border:1px solid var(--ai-app-border); border-radius:var(--ai-app-radius); padding:20px; }
.appsinsight-apps-related__title { margin:0 0 12px; font-size:18px; }
.appsinsight-apps-related__list { list-style:none; margin:0; padding:0; display:flex; gap:10px; flex-wrap:wrap; }
.appsinsight-apps-related__list a { display:inline-flex; gap:5px; padding:8px 14px; border:1px solid var(--ai-app-border); border-radius:999px; text-decoration:none; color:#374151; font-size:13.5px; }
.appsinsight-apps-related__list small { color:var(--ai-app-muted); }
