/* Επιπλέον στυλ για φόρμες, κάρτες ομάδων και σελίδες λεπτομερειών.
   Βασίζεται στο υπάρχον design του index.html */

.form-card{
  background:var(--card);
  border:1px solid var(--line);
  padding:28px 24px;
  margin-top:20px;
}
.form-card label{
  display:block;
  font-size:.9rem;
  font-weight:600;
  margin-bottom:6px;
  color:var(--fg);
}
.form-card .field{margin-bottom:18px;}
.form-card input[type="text"],
.form-card input[type="email"],
.form-card input[type="url"],
.form-card select,
.form-card textarea{
  width:100%;
  padding:10px 12px;
  border:1px solid var(--line);
  background:var(--bg);
  color:var(--fg);
  font-family:'Inter',sans-serif;
  font-size:.95rem;
  border-radius:2px;
}
.form-card textarea{min-height:90px; resize:vertical;}
.form-card .hint{font-size:.82rem; color:var(--muted); margin-top:4px;}
.form-card .checkboxes{display:flex; flex-direction:column; gap:8px;}
.form-card .checkboxes label{font-weight:400; display:flex; align-items:center; gap:8px; cursor:pointer;}
.form-card button[type="submit"],
.btn-primary{
  background:var(--bronze);
  color:var(--bg);
  border:none;
  padding:12px 22px;
  font-family:'Inter',sans-serif;
  font-size:.95rem;
  font-weight:600;
  cursor:pointer;
  border-radius:2px;
}
.form-card button[type="submit"]:hover,
.btn-primary:hover{opacity:.9;}
.form-card button:disabled{opacity:.5; cursor:not-allowed;}

.msg{padding:14px 18px; margin:16px 0; border:1px solid var(--line); font-size:.94rem;}
.msg.ok{background:var(--card); border-left:3px solid var(--olive);}
.msg.err{background:var(--card); border-left:3px solid #a44;}
.msg .token-box{
  margin-top:12px;
  padding:12px;
  background:var(--bg);
  border:1px dashed var(--line);
  word-break:break-all;
  font-size:.88rem;
}
.msg .token-box a{color:var(--bronze); font-weight:600;}

.search-bar{
  display:flex; gap:10px; margin:18px 0 24px; flex-wrap:wrap;
}
.search-bar input{
  flex:1; min-width:180px;
  padding:10px 12px;
  border:1px solid var(--line);
  background:var(--bg);
  color:var(--fg);
  font-family:'Inter',sans-serif;
  font-size:.95rem;
}
.search-bar button{
  background:var(--olive);
  color:#fff;
  border:none;
  padding:10px 18px;
  font-family:'Inter',sans-serif;
  font-weight:600;
  cursor:pointer;
  border-radius:2px;
}

.groups-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  margin-top:10px;
}
.group-card{
  background:var(--card);
  border:1px solid var(--line);
  padding:18px 20px;
  transition:border-color .15s;
}
.group-card:hover{border-color:var(--bronze);}
.group-card a{text-decoration:none; color:inherit; display:block;}
.group-card h3{font-family:'Bitter',serif; font-size:1.15rem; margin-bottom:6px; color:var(--fg);}
.group-card .meta{font-size:.88rem; color:var(--muted); margin-bottom:8px;}
.group-card .preview{font-size:.9rem; color:var(--muted); line-height:1.5;}

.group-detail .meta-row{
  display:flex; flex-wrap:wrap; gap:12px 24px;
  margin:16px 0 24px;
  font-size:.92rem;
  color:var(--muted);
}
.group-detail .meta-row strong{color:var(--olive); font-weight:600;}
.group-detail .block{margin-bottom:28px;}
.group-detail .block h3{
  font-family:'Bitter',serif;
  font-size:1.05rem;
  color:var(--olive);
  margin-bottom:8px;
}
.group-detail .block p{white-space:pre-wrap;}

.empty-state{
  background:var(--card);
  border:1px dashed var(--line);
  padding:28px 20px;
  text-align:center;
  color:var(--muted);
  font-size:.95rem;
}

.back-link{display:inline-block; margin-bottom:20px; font-size:.9rem; color:var(--bronze);}
