/* Downloadable (İndirilebilir) single page, app-store style. Loaded only on posts of this format. */
.app { max-width: 1000px; margin: 0 auto; padding: 0 16px 3em; }
.app-head { display: flex; gap: 1.6em; align-items: center; padding: 1.8em 0 1.4em; }
.app-icon { flex: none; width: 132px; height: 132px; border-radius: 28px; overflow: hidden; background: var(--mint, #e6efe9); box-shadow: 0 10px 26px rgba(0,0,0,.18); display: flex; align-items: center; justify-content: center; color: var(--green); font-size: 3em; padding: 6px; }
.app-icon:has(img) { padding: 0; }
.app-icon img { width: 100%; height: 100%; object-fit: contain; display: block; }
.app-title { margin: 0 0 .1em; font-family: var(--serif); font-size: calc(2.2em * var(--fs, 1)); line-height: 1.15; }
.app-dev { margin: 0 0 .9em; color: var(--green); font-weight: 600; }
.app-cta { margin: 0; display: flex; flex-wrap: wrap; gap: .7em; align-items: center; }
.app-btn { display: inline-flex; align-items: center; gap: .55em; padding: .7em 1.5em; border-radius: 999px; font-weight: 700; background: var(--green); color: #fff; border: 2px solid var(--green); transition: background .2s, transform .15s; }
.app-btn:hover { background: var(--green-dark, #12281c); color: #fff; transform: translateY(-1px); }
.app-btn--main { font-size: 1.1em; padding: .75em 2em; box-shadow: 0 6px 16px rgba(30,90,60,.3); }
.app-btn--alt { background: transparent; color: var(--green); }
.app-btn--alt:hover { background: var(--mint, #e6efe9); color: var(--green); }
.app-site { font-weight: 600; color: var(--muted); }
.app-site:hover { color: var(--green); }
.app-count { margin: .7em 0 0; font-size: .85em; color: var(--muted); }
.app-strip { list-style: none; margin: 0 0 2em; padding: 1em 0; display: flex; flex-wrap: wrap; border-block: 1px solid var(--line, #dfe5e0); }
.app-strip li { flex: 1 1 120px; text-align: center; padding: .2em .8em; border-inline-start: 1px solid var(--line, #dfe5e0); display: flex; flex-direction: column; gap: .15em; }
.app-strip li:first-child { border-inline-start: 0; }
.app-strip-l { font-size: .72em; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.app-strip b { font-size: 1.05em; overflow-wrap: anywhere; }
.app-cols { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 2.4em; align-items: start; }
.app-box { margin: 0 0 1.4em; padding: 1.1em 1.3em; background: var(--surface, #fff); border: 1px solid var(--line, #dfe5e0); border-radius: 14px; }
.app-box h2 { margin: 0 0 .6em; font-size: 1.05em; font-family: var(--serif); }
.app-box p { margin: 0; }
.app-changes { margin: 0; padding-inline-start: 1.2em; }
.app-changes li { margin: 0 0 .35em; }
.app-sha { font-family: ui-monospace, Menlo, monospace; font-size: .78em; overflow-wrap: anywhere; color: var(--muted); }
html[data-theme="dark"] .app-box { background: #18211c; }
@media (max-width: 760px) { .app-head { flex-direction: column; text-align: center; } .app-cta { justify-content: center; } .app-cols { grid-template-columns: 1fr; } .app-icon { width: 108px; height: 108px; border-radius: 24px; } .app-title { font-size: 1.7em; } }

/* Featured image: large, in full, above the description. */
.app-shot { margin: 0 0 1.6em; border-radius: 16px; overflow: hidden; background: var(--mint, #e6efe9); }
.app-shot img { display: block; width: 100%; height: auto; }
