/* Perfect Plants Club – fajkatalógus, fajlap, kívánságlista. */
.cat-hero{padding-bottom:60px}
.cat-search{margin:26px auto 0;max-width:640px}
.cat-main{max-width:1280px;margin:0 auto;padding:10px clamp(16px,5vw,80px) 60px}
.cat-cats{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:10px;margin:-30px 0 20px;position:relative;z-index:2}
.cat-tile{display:grid;justify-items:center;gap:6px;padding:14px 6px;border-radius:18px;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);text-align:center;transition:transform .35s var(--ease),border-color .3s,background .3s}
.cat-tile img{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(0,0,0,.45));transition:transform .5s var(--ease)}
.cat-tile strong{font-size:12.5px;line-height:1.25}
.cat-tile small{font-size:11px;color:var(--muted)}
.cat-tile:hover{transform:translateY(-4px);border-color:rgba(232,189,104,.4)}
.cat-tile:hover img{transform:rotate(-8deg) scale(1.1)}
.cat-tile.is-on{border-color:transparent;background:linear-gradient(135deg,#8fae76,#6f8f5c);color:#0f1a12}
.cat-tile.is-on small{color:rgba(15,26,18,.75)}
.az-bar{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin:0 0 26px}
.az-bar a,.az-bar span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;font:600 13px 'DM Sans'}
.az-bar a{background:rgba(255,248,235,.05);border:1px solid var(--line);transition:background .25s,color .25s}
.az-bar a:hover{background:rgba(232,189,104,.12);color:var(--gold2)}
.az-bar a.on{background:var(--terra);border-color:transparent;color:#fff}
.az-bar span{color:rgba(184,191,174,.3)}
.cat-headline{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:16px}
.cat-headline h2{font:600 clamp(24px,3vw,34px)/1.1 'Playfair Display',serif;margin:0}
.tx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px}
.tx-card{position:relative;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);box-shadow:0 14px 30px -20px rgba(0,0,0,.7);transition:transform .45s var(--ease),border-color .4s,box-shadow .45s;animation:cardIn .5s var(--ease) both}
.tx-img{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:radial-gradient(circle at 50% 60%,#22382a,#15241b)}
.tx-img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.tx-img .placeholder{width:44%;height:auto;margin:12% auto 0;object-fit:contain;opacity:.85}
.tx-info{display:block;padding:14px 16px 16px}
.tx-info strong{display:block;margin-top:5px;font:600 17px/1.25 'Playfair Display',serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tx-info em{display:block;margin-top:2px;font-size:13px;color:var(--gold2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tx-meta{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:10px;font-size:12px;color:var(--muted)}
.tx-meta b{display:inline-flex;align-items:center;gap:5px;color:#d8ebc8;font-weight:600}
.tx-meta .ic{width:13px;height:13px}
.tx-card:hover{transform:translateY(-6px);border-color:rgba(232,189,104,.4);box-shadow:0 26px 44px -22px rgba(0,0,0,.85)}
.tx-card:hover .tx-img img{transform:scale(1.07)}
.tx-pending{position:absolute;right:10px;bottom:10px;padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:700;background:rgba(232,189,104,.85);color:#1a120a}
.tx-pending.inline{position:static;display:inline-block;margin-left:6px;letter-spacing:.5px}
.tx-group{margin-bottom:34px}
.tx-ghead{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.tx-ghead h3{font:italic 600 26px 'Playfair Display',serif;margin:0;color:var(--gold2)}
.tx-ghead small{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--sage)}
.tx-gtip{flex-basis:100%;font-size:13.5px;color:var(--muted);font-style:italic}
.gbif-fallback{margin-top:34px;padding:22px;border-radius:24px;border:1px dashed rgba(232,189,104,.4);background:rgba(232,189,104,.04);animation:cardIn .5s var(--ease)}
.gbif-fallback[hidden]{display:none}
.gf-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
.gf-head img{width:46px;height:46px;object-fit:contain}
.gf-head h3{font:600 21px 'Playfair Display',serif;margin:0}
.gf-head p{margin:4px 0 0;font-size:13.5px;color:var(--muted)}
.gf-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.gf-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line)}
.gf-item i{display:block;font:italic 16px 'Playfair Display',serif}
.gf-item small{font-size:12px;color:var(--muted)}
.gf-attr{margin:14px 0 0;font-size:12px;color:var(--muted)}
.gf-attr a{color:var(--gold2)}

/* ---------- fajlap ---------- */
.species-hero .plant-photo img{height:clamp(320px,38vw,500px)}
.sp-title{font-size:clamp(34px,4.2vw,58px)!important}
.sp-names{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sp-names span{padding:5px 12px;border-radius:999px;font-size:13px;background:rgba(14,22,16,.55);border:1px solid rgba(255,240,215,.14)}
.sp-market{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px;font-size:14px;color:var(--muted)}
.sp-market a,.sp-market span{display:inline-flex;align-items:center;gap:6px}
.sp-market b{color:var(--text)}
.sp-market .ic{width:16px;height:16px;color:var(--gold2)}
.sp-market a.hot{color:#c9e6b3}.sp-market a.hot b{color:#fff}
.sp-market a:hover{color:var(--gold2)}
.sp-desc{margin:18px 0 0;font-size:15px;line-height:1.7;color:rgba(243,239,228,.88)}
.intel{padding-top:70px}
.intel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.intel-card{padding:20px;border-radius:24px;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);box-shadow:0 20px 40px -30px rgba(0,0,0,.8)}
.intel-card h3{display:flex;align-items:center;gap:10px;font:600 18px/1.25 'Playfair Display',serif;margin:0 0 16px}
.intel-card h3 img{width:34px;height:34px;object-fit:contain}
.intel-note{margin:12px 0 0;font-size:12px;color:var(--muted)}
.heat-strip{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px}
.heat-strip span{display:grid;gap:5px;justify-items:center}
.heat-strip i{display:block;width:100%;height:46px;border-radius:9px;background:rgba(255,248,235,.05);border:1px solid transparent;transition:transform .3s var(--ease)}
.heat-strip span:hover i{transform:scaleY(1.08)}
.heat-strip .h1 i{background:rgba(238,143,168,.22)}
.heat-strip .h2 i{background:rgba(238,143,168,.42)}
.heat-strip .h3 i{background:rgba(238,143,168,.66)}
.heat-strip .h4 i{background:linear-gradient(180deg,#f6a9bf,#d9637f);box-shadow:0 6px 14px -6px rgba(217,99,127,.8)}
.heat-strip .now i{border-color:var(--gold)}
.heat-strip small{font-size:9.5px;color:var(--muted);text-transform:capitalize}
.water-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;align-items:end;height:130px}
.water-bars span{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:4px}
.water-bars b{font-size:10px;font-weight:700;color:#bcdcf0}
.water-bars i{display:block;width:100%;height:var(--h,0%);min-height:3px;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,#7fb6d9,#3f7aa6);transform-origin:bottom;animation:growUp .8s var(--ease) both}
.water-bars span:nth-child(n) i{animation-delay:calc(var(--d,0ms))}
.water-bars .now i{box-shadow:0 0 0 2px var(--gold)}
.water-bars small{font-size:10px;color:var(--muted);text-transform:uppercase}
@keyframes growUp{from{transform:scaleY(0)}}
.grower-list{display:grid;gap:8px;max-height:330px;overflow-y:auto;padding-right:4px;scrollbar-width:thin}
.grower{display:flex;align-items:center;justify-content:space-between;gap:8px}
.grower .mini-link{flex-shrink:0}
.sp-gallery,.sp-talk,.sp-siblings{padding-top:70px}
.masonry{columns:4 220px;column-gap:12px}
.mz{position:relative;display:block;margin:0 0 12px;break-inside:avoid;border-radius:16px;overflow:hidden;cursor:zoom-in;border:1px solid var(--line)}
.mz img{width:100%;height:auto;transition:transform .8s var(--ease)}
.mz span{position:absolute;left:8px;bottom:8px;padding:4px 10px;border-radius:999px;font-size:11.5px;background:rgba(10,18,13,.72);backdrop-filter:blur(6px);opacity:0;transform:translateY(4px);transition:opacity .3s,transform .3s}
.mz:hover img{transform:scale(1.05)}
.mz:hover span{opacity:1;transform:none}
.sib-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.sib{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);transition:border-color .3s,transform .3s var(--ease)}
.sib i{font-family:'Playfair Display',serif}
.sib small{color:var(--muted);font-size:12px}
.sib b{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#d8ebc8}
.sib b .ic{width:12px;height:12px}
.sib:hover{border-color:rgba(232,189,104,.45);transform:translateY(-2px)}
.gbif-attr{margin:50px 0 0;text-align:center;font-size:12px;color:var(--muted)}
.gbif-attr a{color:var(--gold2)}
.gbif-attr .mini-link{margin-left:8px}

/* ---------- kívánságlista ---------- */
.wish-add-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:12px;align-items:end}
.wish-add-row .btn{min-height:48px}
.wish-count{margin:22px 0 12px}
.wish-count .hot{display:inline-flex;align-items:center;gap:5px;color:#c9e6b3;font-weight:600}
.wish-count .hot .ic{width:15px;height:15px}
.wish-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.wish{display:flex;align-items:center;gap:14px;padding:10px 12px 10px 10px;border-radius:20px;background:linear-gradient(160deg,var(--panel2),var(--panel));border:1px solid var(--line);transition:border-color .3s,transform .3s var(--ease)}
.wish:hover{transform:translateX(3px)}
.wish.has-offer{border-color:rgba(143,174,118,.5);background:linear-gradient(120deg,rgba(143,174,118,.14),var(--panel))}
.wish-img{flex:0 0 74px;height:74px;border-radius:14px;overflow:hidden;background:radial-gradient(circle,#22382a,#15241b)}
.wish-img img{width:100%;height:100%;object-fit:cover}
.wish-img .placeholder{width:60%;height:60%;margin:20%;object-fit:contain}
.wish-body{flex:1;min-width:0}
.wish-body strong{font:600 17px 'Playfair Display',serif}
.wish-body i{color:var(--gold2);font-size:13.5px}
.wish-body p{margin:3px 0 0;font-size:13.5px;color:var(--muted)}
.wish-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-top:8px}
.wish-meta time{font-size:11.5px;color:var(--muted)}
.wish-meta .pill .ic{width:13px;height:13px}
.pill.offer{background:rgba(143,174,118,.18);border-color:rgba(143,174,118,.5);color:#d8ebc8}
.pill.muted-pill{background:rgba(255,248,235,.04);border-color:var(--line);color:var(--muted)}
.wish-del{margin:0}

@media (max-width:1100px){
  .cat-cats{grid-template-columns:repeat(5,minmax(0,1fr))}
  .intel-grid{grid-template-columns:1fr 1fr}
  .intel-grid .intel-card:last-child{grid-column:1/-1}
}
@media (max-width:760px){
  .cat-main{padding-left:16px;padding-right:16px}
  .cat-cats{display:flex;overflow-x:auto;margin:-24px -16px 16px;padding:0 16px 6px;scrollbar-width:none}
  .cat-cats::-webkit-scrollbar{display:none}
  .cat-tile{flex:0 0 96px}
  .az-bar{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin:0 -16px 20px;padding:0 16px 4px;scrollbar-width:none}
  .az-bar a,.az-bar span{flex-shrink:0;width:32px;height:32px}
  .tx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .tx-info{padding:10px 12px 12px}
  .tx-info strong{font-size:15px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .tx-meta{font-size:11px}
  .intel-grid{grid-template-columns:1fr}
  .heat-strip i{height:38px}
  .masonry{columns:2 140px;column-gap:8px}
  .mz{margin-bottom:8px}
  .mz span{opacity:1;transform:none;font-size:10px}
  .wish-add-row{grid-template-columns:1fr}
  .wish{align-items:flex-start}
  .wish-img{flex-basis:60px;height:60px}
  .gf-list{grid-template-columns:1fr}
}
.water-bars .nil i{background:rgba(255,248,235,.08);animation:none}
