/* Apps page styles (tile layout) */

.app-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1rem; margin-top:1.2rem; }
.app-card{ display:flex; flex-direction:column; gap:.75rem; border:1px solid var(--border); border-radius:.95rem; padding:1.1rem 1.2rem; box-shadow:var(--shadow); background:var(--panel); border-left:4px solid transparent; transition:transform .12s ease; }
.app-card:hover{ transform:translateY(-2px); }
.app-card-icon{ width:78px; height:78px; border-radius:18px; display:grid; place-items:center; background:none; margin:0 auto; }
.app-card-icon svg{ width:54px; height:54px; stroke:#9fc26b; fill:none; stroke-width:2.2; }
.app-card h3{ margin:0; font-size:1.1rem; font-weight:700; align-self:flex-start; padding:.32rem .85rem; border-radius:.7rem; background:rgba(11,16,33,0.9); box-shadow:0 10px 26px rgba(0,0,0,0.28); }
.app-card p{ margin:0; color:var(--muted); line-height:1.5; }

/* Links within app cards */
.app-links{ list-style:none; padding:0; margin:.5rem 0 0 0; }
.app-links li{ margin:.35rem 0; }
.app-links a{ display:inline-flex; align-items:center; gap:.4rem; font-size:.9rem; font-weight:500; color:var(--accent); text-decoration:none; padding:.25rem .6rem; border-radius:.4rem; background:rgba(14,165,168,0.12); transition:background .15s ease; }
.app-links a:hover{ background:rgba(14,165,168,0.24); text-decoration:none; }
.app-links a::before{ content:""; display:inline-block; width:.5rem; height:.5rem; border-radius:50%; background:currentColor; opacity:.6; }

/* Clickable app cards */
.app-card-link{ text-decoration:none; color:inherit; cursor:pointer; }
.app-card-link:hover{ transform:translateY(-4px); box-shadow:0 8px 24px rgba(0,0,0,0.15); }
.app-card-cta{ display:flex; align-items:center; gap:.5rem; margin-top:auto; padding-top:.5rem; font-size:.85rem; font-weight:600; color:var(--accent, #0ea5a8); }
.app-card-cta .dot{ width:8px; height:8px; border-radius:50%; background:currentColor; opacity:.7; }

/* Disabled feature cards for coming soon items */
.feature.disabled{ opacity:.55; pointer-events:none; }
.feature.disabled .tile-cta{ color:var(--muted); }
.feature.disabled .link-gradient{ background:none; -webkit-background-clip:unset; background-clip:unset; color:var(--muted); }

.app-card.accent-teal{ background:linear-gradient(165deg, rgba(14,165,168,0.32), rgba(14,165,168,0.08)); border-left-color:rgba(14,165,168,0.85); }
.app-card.accent-green{ background:linear-gradient(165deg, rgba(159,194,107,0.34), rgba(159,194,107,0.10)); border-left-color:rgba(159,194,107,0.85); }
.app-card.accent-amber{ background:linear-gradient(165deg, rgba(245,158,11,0.34), rgba(245,158,11,0.12)); border-left-color:rgba(245,158,11,0.88); }
.app-card.accent-teal-green{ background:linear-gradient(165deg, rgba(14,165,168,0.28), rgba(159,194,107,0.14)); border-left-color:rgba(159,194,107,0.8); }
.app-card.accent-amber-teal{ background:linear-gradient(165deg, rgba(245,158,11,0.30), rgba(14,165,168,0.16)); border-left-color:rgba(245,158,11,0.85); }

/* Scale up the nav logo for a bolder first impression on the apps page */
.site-header .brand .brand-logo{ height:96px; }
@media (min-width:1024px){
  .site-header .brand .brand-logo{ height:112px; }
}

@media (max-width:680px){
  .app-card{ padding:1rem; }
}
