/* EXCEL4HOUSING 4.0 Toolbox */
.e4h-toolbox{--e4h-c:#2e7d32}
.e4h-toolbox *,.e4h-single *{box-sizing:border-box}

/* Filter */
.e4h-filterbar{display:flex;flex-direction:column;align-items:flex-end;gap:10px;margin:0 0 24px}
.e4h-filter-toggle{background:#f9b233;color:#222;border:0;padding:8px 22px;font-weight:700;cursor:pointer;border-radius:3px}
.e4h-filters{display:flex;flex-wrap:wrap;gap:10px;width:100%;background:#f5f5f5;padding:14px;border-radius:6px}
.e4h-filters input,.e4h-filters select{padding:8px 10px;border:1px solid #ccc;border-radius:4px;font-size:14px}
.e4h-f-search{flex:1 1 220px}
.e4h-f-reset{background:#e0e0e0;border:0;padding:8px 16px;border-radius:4px;cursor:pointer}

/* Section */
.e4h-section{margin:0 0 48px}
.e4h-section-title{display:inline-block;background:var(--e4h-c);color:#fff;font-size:1.15rem;line-height:1;padding:10px 18px;margin:0 0 14px;border-radius:2px}
.e4h-section-intro{font-size:.92rem;color:#444;margin:0 0 22px;max-width:1100px}

/* Grid + cards */
.e4h-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.e4h-card{display:flex;flex-direction:column;border:1px solid #ddd;border-radius:6px;padding:0 0 14px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:box-shadow .15s}
.e4h-card:hover{box-shadow:0 4px 14px rgba(0,0,0,.12)}
.e4h-card-stage{background:var(--e4h-c);color:#fff;text-align:center;font-size:.8rem;font-weight:700;padding:6px;border-radius:6px 6px 0 0}
.e4h-card-title{font-size:1.05rem;margin:12px 14px 2px}
.e4h-card-title a{color:var(--e4h-c);text-decoration:none}
.e4h-card-author{font-size:.8rem;color:#666;margin:0 14px 10px}
.e4h-card-img{display:block;margin:0 14px 12px;border-radius:4px;overflow:hidden;background:#f0f0f0;aspect-ratio:16/10}
.e4h-card-img img{width:100%;height:100%;object-fit:cover;display:block}
.e4h-card-img-ph{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--e4h-c) 18%,#fff)}
.e4h-card-img-ph span{font-size:3rem;font-weight:800;color:var(--e4h-c);opacity:.5}
.e4h-card-desc{font-size:.86rem;color:#333;margin:0 14px 12px;flex:1}
.e4h-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 14px 12px}
.e4h-single .e4h-chips{margin:0 0 8px}
.e4h-chip{display:inline-block;border:1px solid #f08a24;color:#c86a00;font-size:.72rem;line-height:1.5;padding:2px 10px;border-radius:12px;max-width:100%;white-space:normal;overflow-wrap:break-word;text-align:center}
.e4h-card-foot{display:flex;justify-content:space-between;align-items:center;margin:0 14px}
.e4h-cost{font-size:.72rem;font-weight:700;padding:2px 10px;border-radius:12px;background:#eee;color:#555}
.e4h-cost-free{background:#e3f2e5;color:#2e7d32}
.e4h-cost-commercial{background:#fdecea;color:#c62828}
.e4h-cost-both{background:#e8eaf6;color:#3949ab}
.e4h-more{font-size:.85rem;font-weight:600;color:var(--e4h-c);text-decoration:none;margin-left:auto}
.e4h-hidden-extra,.e4h-filtered-out{display:none!important}
.e4h-showmore{display:block;margin:22px 0 0 auto;background:var(--e4h-c);color:#fff;border:0;padding:10px 24px;font-weight:700;border-radius:3px;cursor:pointer}
.e4h-noresults{color:#888;font-style:italic}

/* Single tool */
.e4h-single{--e4h-c:#2e7d32}
.e4h-single-head{display:flex;justify-content:flex-end;gap:14px;align-items:center;margin:0 0 18px}
.e4h-single-stage{background:var(--e4h-c);color:#fff;font-weight:700;padding:8px 26px;border-radius:2px}
.e4h-gotool{display:inline-block;background:var(--e4h-c);color:#fff!important;font-weight:700;padding:10px 26px;border-radius:3px;text-decoration:none;box-shadow:2px 2px 0 rgba(0,0,0,.2)}
.e4h-gotool:hover{filter:brightness(1.1)}
.e4h-single-author{color:#444}
.e4h-single h4{color:var(--e4h-c);margin:26px 0 8px}
.e4h-block{font-size:.95rem;color:#333}
.e4h-profiles{margin:0 0 0 18px}

@media (max-width:600px){
  .e4h-grid{grid-template-columns:1fr}
  .e4h-single-head{flex-wrap:wrap;justify-content:flex-start}
}
