/**
 * Pickle in Dar — shared ecosystem launcher styles.
 * Hosted once at https://darpickleball.com/shared/ecosystem-launcher.css
 * See ecosystem-launcher.js in the same folder for how this is used.
 */
.ecolaunch-btn{
  width:36px; height:36px; border-radius:50%; border:none; cursor:pointer; padding:0;
  background:#fff; display:flex; align-items:center; justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,0.18); transition:transform 0.15s ease;
}
.ecolaunch-btn:hover{ transform:scale(1.08); }

.modal-overlay{
  position:fixed; inset:0; background:rgba(10,15,20,0.55);
  display:flex; align-items:center; justify-content:center; z-index:9999; padding:20px;
}
.modal-overlay.hidden{ display:none; }
.modal{
  background:#fff; border-radius:20px; padding:28px; max-width:560px; width:100%;
  max-height:85vh; overflow-y:auto; font-family:'Plus Jakarta Sans', Arial, sans-serif; color:#1c2b1f;
}
.modal-header{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:10px; }
.modal-header h3{ margin:0; font-size:1.4rem; }
.modal-close{ background:none; border:none; font-size:1.5rem; cursor:pointer; color:#4b5a68; line-height:1; }
.modal p.hint{ color:#4b5a68; font-size:0.9rem; margin:0; }

.apps-grid{ display:grid; grid-template-columns:repeat(2, 1fr); gap:14px; margin-top:14px; }
@media (max-width:480px){ .apps-grid{ grid-template-columns:1fr; } }
.app-card{
  display:flex; flex-direction:column; gap:6px; text-decoration:none; color:#1c2b1f;
  background:#faf7ec; border:1px solid rgba(28,43,58,0.1); border-radius:14px; padding:16px;
  transition:transform 0.15s ease, box-shadow 0.15s ease;
}
.app-card:hover{ transform:translateY(-2px); box-shadow:0 10px 22px -14px rgba(28,43,58,0.4); }
.app-card-here{ border-style:dashed; }
.app-card-logo{ width:34px; height:34px; object-fit:contain; border-radius:8px; }
.app-card-emoji{ font-size:1.5rem; }
.app-card-title{ font-weight:700; }
.app-card-sub{ font-size:0.8rem; color:#4b5a68; line-height:1.4; }
.app-card-url{ font-size:0.72rem; color:#F26B3D; font-weight:700; }
