.hashtag-hero .hero-inner{max-width:920px}

.hashtag-tool-section{padding:28px 0 34px}
.hashtag-tool-card{
  width:min(100%,980px);margin:0 auto;padding:clamp(18px,4vw,28px);
  border:1px solid var(--line);border-radius:var(--radius);background:#fff;
  box-shadow:var(--shadow-md)
}
.tool-heading,.results-heading,.alternatives-heading{
  display:flex;align-items:flex-start;justify-content:space-between;gap:18px
}
.tool-heading{margin-bottom:20px}
.tool-heading h2,.results-heading h2{margin:0}
.tool-badge{
  flex:0 0 auto;padding:6px 10px;border-radius:999px;background:var(--brand-soft);
  color:var(--brand-dark);font-size:.8rem;font-weight:800
}

.tool-fields-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.field-group{display:grid;gap:7px}
.field-wide{margin-bottom:15px}
.field-group label{font-size:.86rem;font-weight:800;color:var(--text)}
.field-group label span{font-weight:600;color:var(--muted)}
.field-group input,.field-group select{
  width:100%;min-height:48px;border:1.5px solid #d8c9da;border-radius:12px;
  background:#fff;color:var(--text);padding:0 12px;font:inherit
}
.field-group input:focus,.field-group select:focus{
  outline:0;border-color:var(--brand);box-shadow:0 0 0 4px rgba(198,42,216,.1)
}
.field-help,.tool-disclaimer,.result-note{
  margin:0;color:var(--muted);font-size:.78rem;line-height:1.5
}
.example-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:14px 0 0}
.example-row>span{color:var(--muted);font-size:.78rem;font-weight:750}
.example-chip{
  border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);
  color:#5a4e5e;padding:6px 9px;font-size:.78rem;font-weight:750
}
.example-chip:hover{border-color:#d6bad9;background:var(--brand-soft);color:var(--brand-dark)}

.tool-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.primary-button,.secondary-button{
  min-height:42px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:11px;padding:9px 14px;font-weight:800
}
.primary-button{border:1px solid var(--brand);background:var(--brand);color:#fff}
.primary-button:hover{background:var(--brand-dark);border-color:var(--brand-dark)}
.secondary-button{border:1px solid var(--line);background:#fff;color:var(--text)}
.secondary-button:hover{border-color:#d6bdd9;background:var(--surface-soft);color:var(--brand-dark)}
.tool-disclaimer{margin-top:11px}

.hashtag-results-section{padding:0 0 42px}
.results-card{
  width:min(100%,980px);margin:0 auto;padding:clamp(18px,4vw,28px);
  border:1px solid #e0c9e3;border-radius:var(--radius);background:linear-gradient(180deg,#fff,#fdf9fe);
  box-shadow:var(--shadow-sm)
}
.results-heading{padding-bottom:16px;border-bottom:1px solid var(--line)}
.results-heading p{margin:.4rem 0 0;color:var(--muted)}
.copy-all-button{flex:0 0 auto}

.recommended-tags{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;
  margin-top:18px
}
.hashtag-card{
  position:relative;min-width:0;padding:15px 12px;border:1px solid var(--line);
  border-radius:13px;background:#fff;text-align:left
}
.hashtag-card:hover{border-color:#d6badb;background:var(--brand-soft)}
.hashtag-text{
  display:block;color:var(--brand-dark);font-size:.95rem;font-weight:850;overflow-wrap:anywhere
}
.hashtag-kind{display:block;margin-top:5px;color:var(--muted);font-size:.68rem;font-weight:700}
.result-actions{display:flex;gap:8px;margin-top:12px}
.alternatives-block{margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}
.alternatives-heading h3{margin:0}
.text-button{
  border:0;background:transparent;color:var(--brand-dark);font-weight:800;padding:5px 0
}
.text-button:hover{text-decoration:underline;text-underline-offset:3px}
.alternative-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 10px}
.alternative-tag{
  border:1px solid var(--line);border-radius:999px;background:#fff;
  color:#5d5060;padding:7px 10px;font-size:.8rem;font-weight:750
}
.alternative-tag:hover{background:var(--brand-soft);border-color:#d8badc;color:var(--brand-dark)}

.recent-generations-section{padding:36px 0}
.recent-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.recent-topic{
  border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--text);
  padding:8px 11px;font-size:.82rem;font-weight:750
}
.recent-topic:hover{background:var(--brand-soft);border-color:#d4b7d8;color:var(--brand-dark)}

.related-tool-card{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin-top:34px;padding:20px;border:1px solid #e1c9e5;border-radius:16px;background:var(--brand-soft)
}
.related-tool-card h3{margin:0 0 6px}
.related-tool-card p{margin:0}
.related-links{display:flex;flex-wrap:wrap;gap:8px;flex:0 0 auto}

.hashtag-toast{
  position:fixed;left:50%;bottom:24px;z-index:2100;transform:translate(-50%,18px);
  padding:9px 14px;border-radius:999px;background:#211925;color:#fff;
  font-size:.86rem;font-weight:750;opacity:0;visibility:hidden;
  transition:.18s ease;box-shadow:var(--shadow-md)
}
.hashtag-toast.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0)}

@media (max-width:900px){
  .recommended-tags{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:760px){
  .tool-fields-grid{grid-template-columns:1fr}
  .recommended-tags{grid-template-columns:repeat(2,minmax(0,1fr))}
  .related-tool-card{align-items:flex-start;flex-direction:column}
  .related-links{width:100%}
  .related-links a{flex:1}
}
@media (max-width:520px){
  .hashtag-tool-section{padding-top:18px}
  .hashtag-tool-card,.results-card{padding:15px;border-radius:14px}
  .tool-heading,.results-heading{gap:10px}
  .tool-heading h2,.results-heading h2{font-size:1.15rem}
  .copy-all-button{min-height:38px;padding:7px 10px;font-size:.78rem}
  .recommended-tags{grid-template-columns:1fr}
  .hashtag-card{padding:12px}
  .tool-actions{display:grid;grid-template-columns:1fr 1fr}
  .tool-actions .primary-button{grid-column:1/-1}
  .alternatives-heading{align-items:center}
  .related-links{display:grid;grid-template-columns:1fr;width:100%}
}
@media (prefers-reduced-motion:reduce){
  .hashtag-toast{transition:none}
}

.set-size-note{margin-top:6px;color:var(--muted);font-size:.75rem}
@media (max-width:1100px){
  .tool-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
