:root{
  --bg:#0f1115;
  --card:#151923;
  --text:#e9eef7;
  --muted:rgba(233,238,247,.72);
  --line:rgba(255,255,255,.10);
  --btn:#2a68ff;
  --btn2:#1b3b8f;
  --ghost:rgba(255,255,255,.06);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:var(--bg);
  color:var(--text);
}

.mono{font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace}
.muted{color:var(--muted)}
.small{font-size:12px}

.topbar{
  position:sticky; top:0;
  background:rgba(15,17,21,.86);
  backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
  z-index:10;
}
.topbar-inner{
  max-width:980px;
  margin:0 auto;
  padding:12px 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.brand{display:flex;gap:10px;align-items:center}
.brand-dot{
  width:38px;height:38px;border-radius:12px;
  background:rgba(255,255,255,.06);
  display:grid;place-items:center;
  border:1px solid var(--line);
}
.brand-name{font-weight:800;letter-spacing:.2px}
.brand-sub{font-size:12px;color:var(--muted)}

.wrap{
  max-width:980px;
  margin:0 auto;
  padding:16px;
}

.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
  box-shadow: 0 14px 32px rgba(0,0,0,.24);
  margin-top:14px;
}

h1{font-size:20px;margin:0 0 6px 0}
h2{font-size:16px;margin:0 0 10px 0}

.search{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:12px;
}
.search input{
  flex: 1 1 220px;
  min-width: 220px;
  padding: 12px 12px;
  border-radius: 12px;
  border:1px solid var(--line);
  background: rgba(0,0,0,.20);
  color: var(--text);
  outline:none;
}

.pill{
  display:inline-flex;
  gap:6px;
  align-items:center;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
}

.alert{
  margin-top:12px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
}
.alert-err{color:#ffb4b4}

.app-card .app-head{
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.app-ico{
  width:70px;height:70px;border-radius:16px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.05);
  overflow:hidden;
  flex:0 0 auto;
  display:grid;
  place-items:center;
}
.app-ico img{width:100%;height:100%;object-fit:cover}
.app-ico-fallback{
  font-weight:800;
  opacity:.85;
}
.app-title{flex:1}
.meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}

.actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:14px;
}

.btn{
  cursor:pointer;
  border:none;
  border-radius:12px;
  padding:12px 14px;
  background: var(--btn);
  color:white;
  font-weight:800;
}
.btn:hover{background: var(--btn2)}
.btn-big{padding:14px 16px; font-size:15px}
.btn-ghost{
  background: var(--ghost);
  border:1px solid var(--line);
  color: var(--text);
}
.btn-ghost:hover{background: rgba(255,255,255,.10)}

.note{
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid var(--line);
}

.tabs{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.tab{
  cursor:pointer;
  border:1px solid var(--line);
  background: rgba(255,255,255,.04);
  color: var(--text);
  padding:10px 12px;
  border-radius: 999px;
  font-weight:700;
  font-size:13px;
}
.tab.active{
  background: rgba(42,104,255,.20);
  border-color: rgba(42,104,255,.35);
}

.panel{display:none}
.panel.active{display:block}
.panel ol{margin:10px 0 0 18px; color:var(--muted); line-height:1.55}
.panel p{margin:10px 0 0 0}

.footer{
  text-align:center;
  margin:18px 0 10px;
}

/* Mobile refinements */
@media (max-width: 520px){
  .topbar-inner{padding:10px 12px}
  .wrap{padding:12px}
  .card{padding:14px}
  .app-card .app-head{gap:12px}
  .app-ico{width:62px;height:62px}
  .btn-big{width:100%}
}

.linklike{
  margin-left:10px;
  border:none;
  background:transparent;
  color: rgba(233,238,247,.85);
  text-decoration: underline;
  cursor:pointer;
  font-weight:700;
  padding:0;
}
.linklike:hover{opacity:.85}
