:root{--bg:#1a1b2e;--card:#262840;--card2:#30334f;--tx:#f2f3ff;--mu:#9a9db8;--ac:#6366f1;--free:#4ade80;--paid:#fbbf24;--bundle:#c084fc}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:16px 'Space Grotesk',system-ui,sans-serif}
.wrap{max-width:720px;margin:0 auto;padding:20px 16px 60px}
h1{font-size:28px;margin:8px 0 16px}h1 b{color:var(--ac)}
input,select,textarea,button{font:inherit;color:var(--tx);background:var(--card);border:1px solid var(--card2);border-radius:14px;padding:12px 14px;width:100%}
button{cursor:pointer;background:var(--ac);border:0;font-weight:600}
button.ghost{background:var(--card2)}button.danger{background:#7f1d1d}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.tabs{display:flex;gap:8px;margin:14px 0;overflow-x:auto}
.tabs button{width:auto;background:var(--card);padding:10px 18px;border-radius:999px;font-weight:500}
.tabs button.on{background:var(--tx);color:var(--bg)}
.app{display:flex;gap:14px;align-items:center;background:var(--card);border-radius:24px;padding:14px;margin-bottom:12px;color:inherit;text-decoration:none}
.app:hover{background:var(--card2)}

.info{flex:1;min-width:0}.info h3{margin:0;font-size:18px}
.info p{margin:2px 0 6px;color:var(--mu);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tag{font-size:12px;padding:3px 10px;border-radius:999px;background:#ffffff14;font-weight:600}
.tag.free{color:var(--free)}.tag.paid{color:var(--paid)}.tag.bundle{color:var(--bundle)}
.go{width:40px;height:40px;border-radius:50%;background:var(--card2);display:grid;place-items:center;flex:none}
.empty{color:var(--mu);text-align:center;padding:40px 0}
form{display:grid;gap:10px;margin-bottom:24px}
.row{display:flex;gap:8px}.row button{width:auto;padding:8px 14px}
.app{cursor:pointer}
.ico{position:relative;display:grid;place-items:center;width:64px;height:64px;border-radius:16px;background:var(--card2);font-weight:700;font-size:26px;color:var(--mu);overflow:hidden;flex:none}
.ico img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ico.big{width:96px;height:96px;border-radius:24px;font-size:38px}
#bk{position:fixed;inset:0;background:#000a;display:none;align-items:flex-end;justify-content:center;z-index:9}
#bk.on{display:flex}
#sheet{background:var(--bg);width:100%;max-width:720px;max-height:92vh;overflow:auto;border-radius:28px 28px 0 0;padding:24px 20px 28px}
.head{display:flex;gap:16px;align-items:center;margin-bottom:16px}
.head h2{margin:0 0 4px;font-size:24px}.head .dev{color:var(--ac);font-weight:500}
.desc{color:var(--mu);line-height:1.6;white-space:pre-wrap;margin:16px 0 24px}
a.dl{display:block;text-align:center;text-decoration:none;background:var(--ac);color:#fff;font-weight:700;padding:16px;border-radius:18px}
.x{width:auto;float:right;background:var(--card2);padding:6px 14px;border-radius:999px}
