/* CV application cards, scoped to the About page portfolio. */
.about-apps { padding: 1rem 6vw 6rem; color: #f1faee; }
.about-apps-container { max-width: 1200px; margin: 0 auto; }
.about-apps .section-header { max-width: 700px; margin: 0 auto 3rem; text-align: center; }
.about-apps .section-tag { color: #00b4d8; font-size: .8rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.about-apps .section-title { margin: .75rem 0; font-size: clamp(1.8rem, 4vw, 2.5rem); line-height: 1.2; letter-spacing: -.03em; }
.about-apps .section-desc { font-size: .95rem; color: #94a3b8; line-height: 1.6; }
.about-apps .apps-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
.about-apps .app-card { padding: 1.5rem; display: flex; flex-direction: column; background: rgba(28,37,65,.6); border: 1px solid rgba(255,255,255,.08); border-radius: 24px; backdrop-filter: blur(16px); transition: border-color .2s, box-shadow .2s; }
.about-apps .app-card:hover { border-color: rgba(0,180,216,.5); box-shadow: 0 15px 40px rgba(0,180,216,.15); }
.about-apps .app-card-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.about-apps .app-logo { width: 60px; height: 60px; flex-shrink: 0; border-radius: 16px; object-fit: cover; box-shadow: 0 4px 10px rgba(0,0,0,.2); }
.about-apps .app-name { margin: 0; font-size: 1.2rem; font-weight: 700; line-height: 1.4; }
.about-apps .app-tech { margin: 0; font-size: .75rem; color: #00b4d8; font-weight: 600; line-height: 1.5; }
.about-apps .app-card-body { display: flex; flex-direction: column; flex: 1; }
.about-apps .app-desc { font-size: .9rem; color: #94a3b8; margin: 0 0 1rem; line-height: 1.65; }
.about-apps .app-features { list-style: none; padding: 0; margin: 0 0 1.25rem; }
.about-apps .app-features li { font-size: .82rem; color: #a8dadc; display: flex; align-items: baseline; gap: .5rem; margin-bottom: .4rem; line-height: 1.5; }
.about-apps .app-feature-icon { color: #00b4d8; flex-shrink: 0; }
.about-apps .app-status { margin-top: auto; display: flex; flex-wrap: wrap; gap: .75rem; }
.about-apps .app-store-link { display: inline-flex; align-items: center; justify-content: center; gap: .6rem; min-height: 48px; padding: .6rem .9rem; border: 1px solid #697386; border-radius: 10px; background: #111827; color: #fff; font-size: .85rem; font-weight: 600; text-decoration: none; }
.about-apps .store-logo { width: 28px; height: 28px; flex-shrink: 0; object-fit: contain; }
.about-apps .app-store-link:hover { background: #1e293b; border-color: #00b4d8; }
.about-apps a:focus-visible { outline: 2px solid #00b4d8; outline-offset: 3px; }
.about-apps .app-card-coming-soon { border-style: dashed; }
.about-apps .badge-warning { display: inline-flex; gap: .5rem; align-items: center; padding: .35rem .8rem; border-radius: 9999px; background: rgba(255,193,7,.15); color: #ffc107; font-size: .75rem; font-weight: 700; }
[data-theme="light"] .about-apps { color: #152c38; }
[data-theme="light"] .about-apps .app-card { background: rgba(255,255,255,.85); border-color: rgba(15,23,42,.15); }
[data-theme="light"] .about-apps .app-desc, [data-theme="light"] .about-apps .section-desc { color: #526674; }
[data-theme="light"] .about-apps .app-features li { color: #315c65; }
[data-theme="light"] .about-apps .badge-warning { color: #855c00; }
@media (max-width: 1100px) { .about-apps .apps-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .about-apps { padding-inline: 5vw; } .about-apps .apps-grid { grid-template-columns: minmax(0, 1fr); } }
