/* ScoutPro Scouting - design tokens */
.scoutpro-profile, .scoutpro-listing, .scoutpro-form-wrap, .scoutpro-auth-form {
	--sp-navy: #111827;
	--sp-navy-soft: #1F2A44;
	--sp-green: #16A34A;
	--sp-green-soft: #DCFCE7;
	--sp-gold: #C9A227;
	--sp-bg: #F5F6F8;
	--sp-border: #E5E7EB;
	--sp-text: #1F2937;
	--sp-muted: #6B7280;
	font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--sp-text);
}

/* ---------- Buttons ---------- */
.scoutpro-btn { padding: 10px 18px; border-radius: 8px; border: 1px solid var(--sp-border); background: #fff; cursor: pointer; font-size: 14px; font-weight: 600; color: var(--sp-text); }
.scoutpro-btn-primary { background: var(--sp-green); border-color: var(--sp-green); color: #fff; }
.scoutpro-btn-primary:hover { background: #128a3e; }
.scoutpro-btn-ghost { background: transparent; color: var(--sp-navy); }
.scoutpro-notice { padding: 12px 16px; background: var(--sp-bg); border-radius: 8px; }
.scoutpro-error { color: #DC2626; font-weight: 600; }
.scoutpro-success { color: var(--sp-green); font-weight: 600; }

/* ---------- Auth forms (login/register) - ίδιο σκούρο glass με το υπόλοιπο plugin ---------- */
.scoutpro-auth-form {
	max-width: 380px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 28px;
	color: #eaf2ff;
	background:
		radial-gradient(circle at 20% 0%, rgba(56,189,248,.16), transparent 30%),
		radial-gradient(circle at 90% 20%, rgba(34,197,94,.14), transparent 30%),
		linear-gradient(135deg,#06101f 0%,#0b1730 55%,#071224 100%);
	backdrop-filter: blur(18px);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 24px;
	box-shadow: 0 30px 70px rgba(0,0,0,.35);
}
.scoutpro-auth-form h2 { margin: 0 0 6px; color: #fff; font-size: 22px; }
.scoutpro-auth-form label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; color: #9fb0c7; }
.scoutpro-auth-form input, .scoutpro-auth-form select { padding: 12px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; font-size: 14px; background: rgba(255,255,255,.06); color: #fff; }
.scoutpro-auth-form select option { background: #0b1730; color: #fff; }
.scoutpro-auth-form input::placeholder { color: rgba(255,255,255,.35); }
.scoutpro-auth-form input:focus, .scoutpro-auth-form select:focus { outline: none; border-color: #22c55e; box-shadow: 0 0 0 4px rgba(34,197,94,.18); }
.scoutpro-auth-form .scoutpro-hint { color: #9fb0c7; }
.scoutpro-auth-form .scoutpro-notice { background: rgba(255,255,255,.07); color: #eaf2ff; }

/* ---------- Multistep form (dark glass-card design, ίδιο ύφος με profile/listing/album) ---------- */
.scoutpro-form-wrap {
	--dark:#071224; --green2:#22c55e; --cyan2:#38bdf8; --border2:rgba(255,255,255,.16); --muted2:#9fb0c7;
	max-width: 1220px;
	color: #eaf2ff;
	background:
		radial-gradient(circle at 20% 0%, rgba(56,189,248,.16), transparent 30%),
		radial-gradient(circle at 90% 20%, rgba(34,197,94,.14), transparent 30%),
		linear-gradient(135deg,#06101f 0%,#0b1730 55%,#071224 100%);
	backdrop-filter: blur(18px);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 28px;
	padding: 28px;
	box-shadow: 0 35px 90px rgba(0,0,0,.4);
}
.scoutpro-form-wrap .steps { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:25px; }
.scoutpro-form-wrap .step-pill { border:1px solid rgba(255,255,255,.1); padding:13px 18px; border-radius:999px; background:rgba(255,255,255,.06); color:var(--muted2); font-weight:700; cursor:pointer; transition:.25s; font-size: 13px; }
.scoutpro-form-wrap .step-pill.active { background:linear-gradient(135deg,var(--green2),#16a34a); border-color:transparent; color:#fff; transform:translateY(-2px); box-shadow:0 10px 24px rgba(34,197,94,.3); }
.scoutpro-form-wrap .progress { height:8px; background:rgba(255,255,255,.08); border-radius:20px; overflow:hidden; margin-bottom:35px; }
.scoutpro-form-wrap .progress-bar { height:100%; width:0%; background:linear-gradient(90deg,#16a34a,#22c55e); transition:.3s; }
.scoutpro-form-wrap .step-panel { display:none; }
.scoutpro-form-wrap .step-panel.active { display:block; animation:scoutpro-fade .25s ease; }
@keyframes scoutpro-fade { from{opacity:0; transform:translateY(8px)} to{opacity:1; transform:translateY(0)} }
.scoutpro-form-wrap .section-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:25px; flex-wrap: wrap; }
.scoutpro-form-wrap .section-head h2 { font-size:22px; font-weight:600; margin:0; color:#fff; }
.scoutpro-form-wrap .api-btn, .scoutpro-form-wrap .add-row-btn { border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.07); backdrop-filter:blur(10px); color:#eaf2ff; padding:12px 20px; border-radius:12px; font-weight:800; cursor:pointer; }
.scoutpro-form-wrap .api-btn:hover, .scoutpro-form-wrap .add-row-btn:hover { background:rgba(255,255,255,.12); }
.scoutpro-form-wrap .grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.scoutpro-form-wrap .field label { display:block; margin-bottom:0; font-weight:700; color:var(--muted2); font-size: 13px; line-height:1.2; }
.scoutpro-form-wrap .field input, .scoutpro-form-wrap .field select, .scoutpro-form-wrap .field textarea { width: 100%; height: 54px !important; min-height: 54px !important; padding: 0 16px !important; line-height: 54px !important; border: 1px solid rgba(255,255,255,.16); border-radius: 14px; font-size: 15px; background: rgba(255,255,255,.06); color:#fff; box-sizing: border-box; }
.scoutpro-form-wrap .field select { appearance: auto; -webkit-appearance: auto; }
.scoutpro-form-wrap .field select option { background:#0b1730; color:#fff; }
.scoutpro-form-wrap .field textarea { height: 120px !important; min-height: 120px !important; padding: 14px 16px !important; line-height: 1.5 !important; }
.scoutpro-form-wrap .field { display: flex; flex-direction: column; gap: 8px; }
.scoutpro-form-wrap input::placeholder, .scoutpro-form-wrap textarea::placeholder { color:rgba(255,255,255,.35); }
.scoutpro-form-wrap input:focus, .scoutpro-form-wrap select:focus, .scoutpro-form-wrap textarea:focus { outline:none; border-color:var(--green2); box-shadow:0 0 0 4px rgba(34,197,94,.18); }
.scoutpro-form-wrap .nav-buttons { display:flex; gap:12px; margin-top:30px; }
.scoutpro-form-wrap .btn { border:0; border-radius:12px; padding:14px 26px; font-weight:800; font-size:15px; cursor:pointer; }
.scoutpro-form-wrap .btn-back { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.16); color:#eaf2ff; }
.scoutpro-form-wrap .btn-back:hover { background:rgba(255,255,255,.12); }
.scoutpro-form-wrap .btn-next, .scoutpro-form-wrap .btn-save { background:linear-gradient(135deg,var(--green2),#16a34a); color:#fff; box-shadow:0 12px 28px rgba(34,197,94,.3); }
.scoutpro-form-wrap .table-toolbar { display:flex; justify-content:space-between; align-items:center; gap:15px; margin-bottom:15px; }
.scoutpro-form-wrap .table-note { color:var(--muted2); font-size:13px; }
.scoutpro-form-wrap .table-shell { width:100%; overflow:auto; border:1px solid rgba(255,255,255,.14); border-radius:18px; background:rgba(255,255,255,.04); }
.scoutpro-form-wrap .fancy-table { width:100%; border-collapse:separate; border-spacing:0; min-width:1300px; }
.scoutpro-form-wrap .fancy-table th { position:sticky; top:0; z-index:2; background:#0d1c33; color:#eaf2ff; padding:12px 10px; text-align:left; font-size:13px; white-space:nowrap; }
.scoutpro-form-wrap .fancy-table td { padding:6px; border-top:1px solid rgba(255,255,255,.08); }
.scoutpro-form-wrap .fancy-table input, .scoutpro-form-wrap .fancy-table select { min-height:38px; border-radius:10px; font-size:13px; background:rgba(255,255,255,.06); color:#fff; border:1px solid rgba(255,255,255,.14); }
.scoutpro-form-wrap .fancy-table select option { background:#0b1730; color:#fff; }
.scoutpro-form-wrap .row-delete { width:36px; height:36px; border:1px solid rgba(239,68,68,.4); border-radius:10px; background:rgba(239,68,68,.12); color:#fecaca; font-weight:900; cursor:pointer; }
.scoutpro-form-wrap .row-delete:hover { background:rgba(239,68,68,.25); }
.scoutpro-form-wrap .stats-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:18px; }
.scoutpro-form-wrap .summary-box { background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:16px; }
.scoutpro-form-wrap .summary-box span { display:block; color:var(--muted2); font-size:13px; font-weight:700; }
.scoutpro-form-wrap .summary-box strong { font-size:26px; color:#fff; }
#scoutpro-form-msg { margin-top: 14px; color:#eaf2ff; }
@media(max-width:900px){
	.scoutpro-form-wrap .grid{grid-template-columns:1fr}
	.scoutpro-form-wrap .section-head{align-items:flex-start; flex-direction:column}
	.scoutpro-form-wrap .stats-summary{grid-template-columns:repeat(2,1fr)}
}

/* ---------- Profile page ---------- */
.scoutpro-profile{
  --sp-dark:#071224;
  --sp-blue:#102a56;
  --sp-green:#19b35a;
  --sp-cyan:#38bdf8;
  --sp-border:rgba(255,255,255,.22);
  --sp-text:#eaf2ff;
  --sp-muted:#9fb0c7;

  max-width:1220px;
  margin:40px auto;
  padding:28px;
  border-radius:34px;
  color:var(--sp-text);
  background:
    radial-gradient(circle at 20% 0%, rgba(56,189,248,.22), transparent 28%),
    radial-gradient(circle at 90% 20%, rgba(25,179,90,.18), transparent 28%),
    linear-gradient(135deg,#06101f 0%,#0b1730 55%,#071224 100%);
  box-shadow:0 35px 90px rgba(7,18,36,.35);
  position:relative;
  overflow:hidden;
}

.scoutpro-profile:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:38px 38px;
  mask-image:linear-gradient(to bottom, black, transparent 85%);
  pointer-events:none;
}

.scoutpro-profile *{
  box-sizing:border-box;
}

.sp-header,
.sp-card,
.sp-value-box,
.sp-tabs,
.sp-media-card,
.sp-table{
  position:relative;
  z-index:2;
}

.sp-header{
  display:grid;
  grid-template-columns:190px 1fr 230px;
  gap:26px;
  align-items:center;
  padding:24px;
  border:1px solid var(--sp-border);
  border-radius:28px;
  background:rgba(255,255,255,.09);
  backdrop-filter:blur(18px);
}

.sp-photo{
  width:180px;
  height:220px;
  border-radius:26px;
  overflow:hidden;
  position:relative;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
  border:1px solid var(--sp-border);
  box-shadow:inset 0 0 40px rgba(255,255,255,.06);
}

.sp-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.sp-photo-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:56px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.03));
}

.sp-shirt-number{
  position:absolute;
  right:12px;
  bottom:12px;
  width:54px;
  height:54px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--sp-green),#22c55e);
  color:#fff;
  font-size:24px;
  font-weight:900;
  box-shadow:0 12px 25px rgba(25,179,90,.35);
}

.sp-identity h1{
  margin:0 0 8px;
  font-size:48px;
  line-height:1;
  text-transform:capitalize;
  letter-spacing:-1.8px;
  color:#fff;
}

.sp-subtitle{
  margin:0 0 18px;
  color:var(--sp-muted);
  font-weight:700;
}

.sp-info-bar{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}

.sp-info-bar span{
  padding:13px 14px;
  border-radius:18px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-weight:800;
}

.sp-info-bar small{
  display:block;
  margin-top:4px;
  color:var(--sp-muted);
  font-size:12px;
}

.sp-team-line{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.sp-team-line strong,
.sp-team-line span{
  padding:9px 13px;
  border-radius:999px;
  background:rgba(56,189,248,.12);
  border:1px solid rgba(56,189,248,.2);
  font-size:15px;
}

.sp-value-box{
  padding:24px;
  border-radius:24px;
  text-align:center;
  background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.05));
  border:1px solid var(--sp-border);
}

.sp-label{
  display:block;
  color:var(--sp-muted);
  font-size:13px;
  font-weight:800;
}

.sp-value{
  display:block;
  margin:10px 0 14px;
  font-size:34px;
  font-weight:950;
  color:#fff;
}

.sp-avail{
  padding:9px 12px;
  border-radius:999px;
  background:rgba(239,68,68,.18);
  color:#fecaca;
}

.sp-avail-no{
  background:rgba(239,68,68,.18);
  color:#fecaca;
}

.sp-avail-yes{
  background:rgba(25,179,90,.22);
  color:#86efac;
}

.sp-tabs{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:26px 0;
  padding:8px;
  border-radius:22px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
}

.sp-tab{
  border:0;
  padding:13px 18px;
  border-radius:16px;
  background:transparent;
  color:var(--sp-muted);
  font-weight:900;
  cursor:pointer;
  transition:.25s;
}

.sp-tab.active{
  color:#fff;
  background:linear-gradient(135deg,var(--sp-green),#22c55e);
  box-shadow:0 12px 24px rgba(25,179,90,.28);
}

.sp-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.sp-card{
  padding:22px;
  border-radius:24px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(18px);
}

.sp-card h4{
  margin:0 0 16px;
  font-size:19px;
  color:#fff;
}

.sp-kv{
  width:100%;
  border-collapse:collapse;
}

.sp-kv td{
  padding:11px 0;
  border-bottom:1px solid rgba(255,255,255,.09);
}

.sp-kv td:first-child{
  color:var(--sp-muted);
}

.sp-kv td:last-child{
  text-align:right;
  font-weight:400;
}

.sp-pitch{
  height:280px;
  border-radius:22px;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(255,255,255,.08) 50%,rgba(255,255,255,.04) 50%),
    linear-gradient(180deg,#15803d,#166534);
  border:1px solid rgba(255,255,255,.2);
}

.sp-pitch:before{
  content:"";
  position:absolute;
  inset:18px;
  border:2px solid rgba(255,255,255,.55);
  border-radius:16px;
}

.sp-pitch-line{
  position:absolute;
  left:50%;
  top:18px;
  bottom:18px;
  width:2px;
  background:rgba(255,255,255,.5);
}

.sp-pos-dot{
  position:absolute;
  width:52px;
  height:52px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:950;
  border:3px solid rgba(255,255,255,.75);
  box-shadow:0 15px 30px rgba(0,0,0,.35);
}

.sp-pos-main{
  background:var(--sp-green);
  left:18%;
  top:45%;
}

.sp-pos-second{
  background:var(--sp-cyan);
  right:18%;
  top:45%;
}

.sp-table{
  width:100%;
  overflow:hidden;
  border-collapse:separate;
  border-spacing:0;
  border-radius:22px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
}

.sp-table th{
  padding:15px;
  background:rgba(255,255,255,.12);
  color:#fff;
  text-align:left;
  white-space:nowrap;
}

.sp-table td{
  padding:15px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#dbeafe;
}

.sp-media-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.sp-media-card{
  min-height:140px;
  padding:22px;
  border-radius:24px;
  text-decoration:none;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(56,189,248,.18),rgba(25,179,90,.14)),
    rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:.25s;
}

.sp-media-card:hover{
  transform:translateY(-4px);
  border-color:rgba(56,189,248,.45);
}

.sp-media-type{
  color:var(--sp-cyan);
  font-weight:900;
}

.sp-media-title{
  font-size:22px;
  font-weight:950;
}

.sp-media-card-video{
  min-height:auto;
  padding:14px;
  gap:10px;
}

.sp-video-embed{
  position:relative;
  width:100%;
  padding-top:56.25%; /* 16:9 */
  border-radius:16px;
  overflow:hidden;
  background:#000;
}

.sp-video-embed iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}

.sp-media-card-video .sp-media-title{
  font-size:16px;
  font-weight:800;
}

@media(max-width:980px){
  .sp-header{
    grid-template-columns:1fr;
  }

  .sp-info-bar,
  .sp-cards,
  .sp-media-grid{
    grid-template-columns:1fr;
  }

  .sp-photo{
    width:100%;
    height:300px;
  }

  .sp-identity h1{
    font-size:36px;
  }

  .sp-panel{
    overflow:auto;
  }
}

/* =========================
   SCOUTPRO LISTING FULL CSS
========================= */

.scoutpro-listing,
.scoutpro-listing *,
.scoutpro-listing *::before,
.scoutpro-listing *::after{
    box-sizing:border-box;
}

.scoutpro-listing{
    display:grid;
    grid-template-columns:320px 1fr;
    gap:38px;
    align-items:start;
    padding:30px;
}

/* SIDEBAR */
.sp-filters{
    position:sticky;
    top:25px;
    padding:30px;
    border-radius:30px;
    background:
        radial-gradient(circle at top right, rgba(34,197,94,.18), transparent 38%),
        linear-gradient(160deg,rgba(12,25,48,.96),rgba(7,18,36,.98));
    backdrop-filter:blur(22px);
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 30px 60px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.05);
    overflow:hidden;
}

.sp-filters h3{
    margin:0 0 28px;
    color:#fff;
    font-size:30px;
    font-weight:800;
}

.sp-filters label{
    display:flex;
    flex-direction:column;
    width:100%;
    margin-bottom:22px;
    color:#c8d4e5;
    font-size:14px;
    font-weight:800;
}

.sp-filters input,
.sp-filters select{
    appearance:none;
    -webkit-appearance:none;
    width:100%;
    max-width:100%;
    height:54px;
    margin-top:8px;
    padding:0 18px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.06);
    color:#fff;
    font-size:15px;
}

.sp-filters input::placeholder{
    color:#8395af;
}

.sp-filters select{
    padding-right:50px;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 5l6.5 6 6.5-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 18px center;
}

.sp-filters input:focus,
.sp-filters select:focus{
    outline:none;
    border-color:#22c55e;
    background:rgba(255,255,255,.08);
    box-shadow:0 0 0 4px rgba(34,197,94,.15);
}

.sp-range-row{
    display:flex;
    gap:10px;
    margin-top:8px;
}
.sp-range-row input{
    margin-top:0;
}

/* Scout Mode reordering: τα scouting-κρίσιμα πεδία ανεβαίνουν πρώτα μέσα στο "Περισσότερα
   φίλτρα" panel (CSS order σε flex container), τα υπόλοιπα advanced μένουν από κάτω. */
.sp-advanced-filters{
    display:flex;
    flex-direction:column;
    border-top:1px solid rgba(255,255,255,.1);
    margin-top:8px;
    padding-top:20px;
}

.sp-filters-subhead{
    color:#22c55e;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin:18px 0 12px;
}

.sp-checkbox{
    flex-direction:row !important;
    align-items:center;
    gap:10px;
    cursor:pointer;
    color:#e7edf6 !important;
}
.sp-checkbox input[type="checkbox"]{
    width:20px;
    height:20px;
    margin-top:0;
    accent-color:#22c55e;
    cursor:pointer;
}

.sp-scout-mode-btn.active{
    background:linear-gradient(135deg,#22c55e,#16a34a);
    border-color:transparent;
    color:#fff;
}

.sp-filters.sp-scout-mode{
    border-color:rgba(34,197,94,.55);
    box-shadow:0 30px 60px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.05), 0 0 0 2px rgba(34,197,94,.35);
}

/* Scout Mode reordering: τα scouting-κρίσιμα πεδία ανεβαίνουν πρώτα μέσα στο "Περισσότερα
   φίλτρα" panel (CSS order σε flex container), τα υπόλοιπα advanced μένουν από κάτω. */
.sp-priority-heading{
    display:none;
    order:-2;
}
.sp-scout-mode .sp-priority-heading{
    display:block;
}
.sp-scout-mode .sp-priority-field{
    order:-1;
    border-left:3px solid #22c55e;
    padding-left:12px;
    margin-left:-15px;
}

/* BUTTONS */
.scoutpro-listing .scoutpro-btn{
    width:100%;
    height:54px;
    border-radius:16px;
    font-size:15px;
    font-weight:900;
    cursor:pointer;
    transition:.25s;
}

.scoutpro-listing .scoutpro-btn-primary{
    margin-top:8px;
    border:0;
    color:#fff;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    box-shadow:0 18px 35px rgba(34,197,94,.25);
}

.scoutpro-listing .scoutpro-btn-primary:hover{
    transform:translateY(-2px);
}

.scoutpro-listing .scoutpro-btn-ghost{
    margin-top:12px;
    background:transparent;
    color:#fff;
    border:1px solid rgba(255,255,255,.15);
}

/* RESULTS */
.sp-results{
    min-width:0;
    transition:opacity .15s;
}
.sp-results.sp-loading{
    opacity:.5;
    pointer-events:none;
}

.sp-card-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(285px,1fr));
    gap:28px;
}

/* PLAYER CARD */
.sp-mini-card{
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-decoration:none;
    min-height:410px;
    padding:30px 26px 76px;
    border-radius:34px;
    background:
        radial-gradient(circle at 85% 0%, rgba(34,197,94,.18), transparent 35%),
        radial-gradient(circle at 0% 100%, rgba(56,189,248,.12), transparent 35%),
        linear-gradient(160deg,rgba(13,27,49,.98),rgba(7,18,36,.98));
    border:1px solid rgba(34,197,94,.18);
    box-shadow:0 35px 70px rgba(7,18,36,.25);
    transition:.35s ease;
}

.sp-mini-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
    background-size:34px 34px;
    opacity:.45;
    pointer-events:none;
}

.sp-mini-card::after{
    content:"VIEW PROFILE";
    position:absolute;
    left:50%;
    bottom:22px;
    transform:translateX(-50%) translateY(10px);
    opacity:0;
    padding:10px 18px;
    border-radius:999px;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    color:#fff;
    font-size:12px;
    font-weight:900;
    letter-spacing:.8px;
    transition:.3s;
}

.sp-mini-card:hover{
    transform:translateY(-10px);
    border-color:rgba(34,197,94,.45);
    box-shadow:0 45px 85px rgba(7,18,36,.35);
}

.sp-mini-card:hover::after{
    opacity:1;
    transform:translateX(-50%) translateY(0);
}

/* PHOTO */
.sp-mini-photo{
    position:relative;
    z-index:2;
    width:150px;
    height:150px;
    border-radius:26px;
    overflow:hidden;
    background:#071224;
    border:1px solid rgba(255,255,255,.1);
    box-shadow:0 20px 45px rgba(0,0,0,.25);
}

.sp-mini-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* BODY */
.sp-mini-body{
    position:relative;
    z-index:2;
    width:100%;
    margin-top:26px;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
}

.sp-mini-body strong{
    display:block;
    color:#fff;
    font-size:26px;
    font-weight:800;
    line-height:1.1;
    margin-bottom:18px;
    text-transform:capitalize;
}

/* tag wrapper - keeps the position/team/nationality chips on their own compact row instead of stretching card height */
.sp-mini-tags{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:8px;
}

/* inline chips */
.sp-mini-body span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:8px 15px;
    border-radius:999px;
    background:rgba(255,255,255,.075);
    border:1px solid rgba(255,255,255,.07);
    color:#b9c6d8;
    font-size:14px;
    font-weight:700;
    white-space:nowrap;
}

/* nationality */
.sp-mini-body .sp-mini-nat{
    color:#dbeafe;
}

/* value always separated */
.sp-mini-body .sp-mini-value{
    display:flex;
    margin-top:16px;
    padding:12px 28px;
    min-height:46px;
    color:#fff;
    font-size:22px;
    font-weight:950;
    background:linear-gradient(135deg,rgba(34,197,94,.35),rgba(34,197,94,.18));
    border:1px solid rgba(34,197,94,.28);
    box-shadow:0 12px 28px rgba(34,197,94,.18);
}

/* RESPONSIVE */
@media(max-width:1100px){
    .scoutpro-listing{
        grid-template-columns:1fr;
        padding:20px;
    }

    .sp-filters{
        position:relative;
        top:auto;
    }
}

@media(max-width:700px){
    .sp-card-grid{
        grid-template-columns:1fr;
    }

    .sp-mini-card{
        min-height:auto;
    }
}

/* ---------- Toast notifications ---------- */
#scoutpro-toasts { position: fixed; top: 20px; right: 20px; z-index: 99999; display: flex; flex-direction: column; gap: 10px; max-width: 340px; }
.scoutpro-toast { background: #111827; color: #fff; padding: 14px 18px; border-radius: 10px; font-size: 14px; font-weight: 600; box-shadow: 0 12px 30px rgba(0,0,0,.2); opacity: 0; transform: translateX(20px); transition: opacity .25s, transform .25s; }
.scoutpro-toast-show { opacity: 1; transform: translateX(0); }
.scoutpro-toast-error { background: #DC2626; }
.scoutpro-toast-success { background: #16A34A; }

/* ---------- Photo uploader ---------- */
.scoutpro-form-wrap .scoutpro-btn { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.18); color:#eaf2ff; }
.scoutpro-form-wrap .scoutpro-btn:hover { background:rgba(255,255,255,.12); }
.scoutpro-form-wrap .scoutpro-btn-primary { background:linear-gradient(135deg,#22c55e,#16a34a); border-color:transparent; color:#fff; }
.scoutpro-media-picker { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.scoutpro-photo-preview { width: 90px; height: 90px; object-fit: cover; border-radius: 12px; border: 1px solid rgba(255,255,255,.16); }

/* ---------- YouTube upload cell ---------- */
.scoutpro-yt-cell { display: flex; flex-direction: column; gap: 6px; }
.scoutpro-yt-cell .scoutpro-yt-upload-btn { padding: 6px 10px; font-size: 12px; align-self: flex-start; }
.scoutpro-yt-cell .scoutpro-yt-progress { font-size: 11px; color: var(--muted2, #64748b); font-weight: 700; }

.scoutpro-media-picker .scoutpro-photo-progress { font-size: 12px; color: var(--muted2, #64748b); font-weight: 700; }

.scoutpro-hint { font-size: 12px; color: var(--muted, #64748b); margin: -4px 0 4px; line-height: 1.4; }
.scoutpro-edit-banner { background: rgba(34,197,94,.12); border: 1px solid rgba(34,197,94,.3); color: #4ade80; font-weight: 700; padding: 12px 16px; border-radius: 10px; margin-bottom: 18px; }

/* =========================================================
   THEME COMPATIBILITY HARDENING
   Βαριά themes (π.χ. Betheme) ορίζουν πολύ γενικούς κανόνες
   (button, input, select, ul, li, a, h1-h6) που μπερδεύονται
   με τα δικά μας. Αυτό το block μπαίνει τελευταίο στο αρχείο
   (κερδίζει σε ισοπαλία specificity) και ξανα-επιβάλλει τις
   πιο κρίσιμες ιδιότητες layout με !important, χωρίς να
   πειράζει χρώματα/μεγέθη που ήδη έχουμε ορίσει παραπάνω.
========================================================= */
.scoutpro-listing,
.scoutpro-profile,
.scoutpro-form-wrap,
.scoutpro-auth-form,
.scoutpro-listing *,
.scoutpro-profile *,
.scoutpro-form-wrap *,
.scoutpro-auth-form *{
    box-sizing:border-box !important;
}

.scoutpro-listing{ display:grid !important; }
.sp-header{ display:grid !important; }
.sp-cards{ display:grid !important; }
.sp-card-grid{ display:grid !important; }
.sp-info-bar{ display:grid !important; }
.sp-media-grid{ display:grid !important; }
.sp-tabs{ display:flex !important; }
.sp-mini-card{ display:flex !important; text-decoration:none !important; }
.sp-mini-tags{ display:flex !important; }
.sp-team-line{ display:flex !important; }
.scoutpro-form-wrap .grid{ display:grid !important; }
.scoutpro-form-wrap .nav-buttons{ display:flex !important; }
.scoutpro-form-wrap .steps{ display:flex !important; }
.scoutpro-auth-form{ display:flex !important; flex-direction:column !important; }

.sp-filters{
    display:block;
}
.sp-advanced-filters:not(.sp-open){ display:none !important; }
.sp-advanced-filters.sp-open{ display:flex !important; flex-direction:column !important; }

.scoutpro-listing .scoutpro-btn,
.scoutpro-form-wrap .btn,
.scoutpro-auth-form .scoutpro-btn{
    box-shadow:none;
    text-transform:none !important;
    letter-spacing:normal !important;
}
.scoutpro-auth-form .scoutpro-btn{
    background:rgba(255,255,255,.07) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#eaf2ff !important;
}
.scoutpro-auth-form .scoutpro-btn:hover{
    background:rgba(255,255,255,.12) !important;
}
.scoutpro-auth-form .scoutpro-btn-primary{
    background:linear-gradient(135deg,#22c55e,#16a34a) !important;
    background-image:linear-gradient(135deg,#22c55e,#16a34a) !important;
    border-color:transparent !important;
    color:#fff !important;
}

/* Profile page tabs/badges - το Betheme (και παρόμοια βαριά themes) βάζουν το δικό τους
   μπλε στιλ σε <button> elements. Ξαναδηλώνουμε το δικό μας σχεδιασμό με !important. */
.scoutpro-profile .sp-tab{
    background:transparent !important;
    color:var(--sp-muted) !important;
    border:0 !important;
    box-shadow:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    border-radius:16px !important;
    font-weight:900 !important;
}
.scoutpro-profile .sp-tab.active{
    background:linear-gradient(135deg,var(--sp-green),#22c55e) !important;
    color:#fff !important;
    box-shadow:0 12px 24px rgba(25,179,90,.28) !important;
}
.scoutpro-profile .sp-tabs{
    background:rgba(255,255,255,.07) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:22px !important;
}
.scoutpro-profile .sp-shirt-number,
.scoutpro-profile .sp-pos-dot,
.scoutpro-profile .sp-team-line strong,
.scoutpro-profile .sp-team-line span,
.scoutpro-profile .sp-avail,
.scoutpro-profile .sp-media-card{
    text-transform:none !important;
    letter-spacing:normal !important;
    box-shadow:none;
}

.scoutpro-listing input,
.scoutpro-listing select,
.scoutpro-profile input,
.scoutpro-profile select,
.scoutpro-form-wrap input,
.scoutpro-form-wrap select,
.scoutpro-auth-form input,
.scoutpro-auth-form select{
    max-width:100% !important;
}

.sp-panel[style*="display: none"],
.sp-panel[style*="display:none"]{
    display:none !important;
}
.sp-panel[style*="display: block"],
.sp-panel[style*="display:block"]{
    display:block !important;
}

/* ---------- Dashboard ---------- */
.scoutpro-dashboard{
    --sp-dark:#071224;
    --sp-green:#19b35a;
    --sp-cyan:#38bdf8;
    --sp-border:rgba(255,255,255,.22);
    max-width:1100px;
    margin:40px auto;
    padding:28px;
    border-radius:34px;
    color:#eaf2ff;
    background:
        radial-gradient(circle at 20% 0%, rgba(56,189,248,.18), transparent 28%),
        radial-gradient(circle at 90% 20%, rgba(25,179,90,.16), transparent 28%),
        linear-gradient(135deg,#06101f 0%,#0b1730 55%,#071224 100%);
    box-shadow:0 35px 90px rgba(7,18,36,.35);
}
.scoutpro-dashboard *{ box-sizing:border-box; }

.sp-dash-account{
    display:flex;
    justify-content:space-between;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
    padding-bottom:22px;
    margin-bottom:26px;
    border-bottom:1px solid rgba(255,255,255,.12);
}
.sp-dash-hello{ display:block; font-size:22px; font-weight:800; }
.sp-dash-role{ display:block; margin-top:4px; color:#9fb0c7; font-size:13px; font-weight:600; }

.sp-dash-empty{
    text-align:center;
    padding:60px 20px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
}
.sp-dash-empty h2{ margin:0 0 10px; font-size:24px; }
.sp-dash-empty p{ color:#9fb0c7; margin:0 0 22px; }

.sp-dash-profile-card{
    display:grid;
    grid-template-columns:110px 1fr auto;
    gap:22px;
    align-items:center;
    padding:22px;
    border-radius:24px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    backdrop-filter:blur(18px);
    margin-bottom:32px;
}
.sp-dash-photo{
    width:100px;
    height:100px;
    border-radius:20px;
    overflow:hidden;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
    border:1px solid rgba(255,255,255,.16);
}
.sp-dash-photo img{ width:100%; height:100%; object-fit:cover; }
.sp-dash-info h2{ margin:0 0 6px; font-size:26px; text-transform:capitalize; color:#fff; }
.sp-dash-info p{ margin:0; color:#9fb0c7; font-weight:600; }
.sp-dash-actions{ display:flex; flex-direction:column; gap:10px; min-width:190px; }
.sp-dash-actions .scoutpro-btn{ width:100%; height:48px; border-radius:14px; font-weight:800; }

.sp-dash-subhead{ margin:0 0 16px; font-size:17px; color:#c8d4e5; font-weight:800; text-transform:uppercase; letter-spacing:.5px; }

.sp-dash-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-bottom:30px;
}
.sp-dash-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
    padding:24px 14px;
    border-radius:22px;
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.12);
}
.sp-dash-card-icon{ font-size:26px; }
.sp-dash-card-count{ font-size:32px; font-weight:950; color:#fff; }
.sp-dash-card-label{ color:#9fb0c7; font-size:13px; font-weight:700; }
.sp-dash-card-add{
    margin-top:8px;
    padding:8px 16px;
    border-radius:999px;
    background:linear-gradient(135deg,var(--sp-green),#22c55e);
    color:#fff !important;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

.sp-dash-link{
    display:inline-block;
    color:var(--sp-cyan);
    font-weight:700;
    text-decoration:none;
}
.sp-dash-link:hover{ text-decoration:underline; }

@media(max-width:780px){
    .sp-dash-profile-card{ grid-template-columns:1fr; text-align:center; }
    .sp-dash-photo{ margin:0 auto; }
    .sp-dash-grid{ grid-template-columns:repeat(2,1fr); }
}

/* ---------- Compare basket ---------- */
.scoutpro-compare-toggle{
    position:absolute;
    top:10px;
    right:10px;
    z-index:5;
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(7,18,36,.65);
    color:#fff;
    font-size:16px;
    line-height:1;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.2s;
    backdrop-filter:blur(6px);
}
.scoutpro-compare-toggle:hover{
    background:rgba(34,197,94,.35);
    border-color:rgba(34,197,94,.6);
}
.scoutpro-compare-toggle.added{
    background:linear-gradient(135deg,#22c55e,#16a34a);
    border-color:transparent;
    color:#fff;
}
.sp-mini-photo,
.sp-photo{
    position:relative;
}

.scoutpro-compare-fab{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:99998;
    display:flex;
    align-items:center;
    gap:8px;
    padding:14px 22px;
    border-radius:999px;
    border:0;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    color:#fff;
    font-size:15px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 18px 40px rgba(34,197,94,.35);
    transition:.2s;
}
.scoutpro-compare-fab:hover{ transform:translateY(-3px); }
#scoutpro-compare-fab-count{
    background:rgba(255,255,255,.25);
    border-radius:999px;
    padding:2px 10px;
    font-size:13px;
}

.scoutpro-compare-modal{
    position:fixed;
    inset:0;
    z-index:99999;
    background:rgba(4,10,20,.82);
    backdrop-filter:blur(6px);
    display:flex;
    align-items:center;
    justify-content:center;
    padding:20px;
}
.scoutpro-compare-modal-inner{
    width:100%;
    max-width:1200px;
    max-height:90vh;
    overflow:auto;
    background:linear-gradient(160deg,#0b1730,#071224);
    border:1px solid rgba(255,255,255,.14);
    border-radius:28px;
    box-shadow:0 40px 100px rgba(0,0,0,.5);
    padding:26px;
    color:#eaf2ff;
    scrollbar-width:thin;
    scrollbar-color:#22c55e rgba(255,255,255,.06);
}
.scoutpro-compare-modal-inner::-webkit-scrollbar{
    width:10px;
}
.scoutpro-compare-modal-inner::-webkit-scrollbar-track{
    background:rgba(255,255,255,.05);
    border-radius:10px;
}
.scoutpro-compare-modal-inner::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg,#22c55e,#16a34a);
    border-radius:10px;
    border:2px solid transparent;
    background-clip:padding-box;
}
.scoutpro-compare-modal-inner::-webkit-scrollbar-thumb:hover{
    background:#22c55e;
    background-clip:padding-box;
}
.scoutpro-compare-modal-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:22px;
    flex-wrap:wrap;
    gap:12px;
}
.scoutpro-compare-modal-head h2{ margin:0; font-size:24px; }
.scoutpro-compare-modal-actions{ display:flex; gap:10px; align-items:center; }
#scoutpro-compare-clear{
    padding:10px 16px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    color:#eaf2ff;
    font-weight:700;
    cursor:pointer;
}
#scoutpro-compare-clear:hover{ background:rgba(255,255,255,.14); }
#scoutpro-compare-close{
    width:38px;
    height:38px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.22);
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    color:#eaf2ff;
    font-size:16px;
    cursor:pointer;
}
#scoutpro-compare-close:hover{ background:rgba(239,68,68,.25); border-color:rgba(239,68,68,.5); }

.scoutpro-compare-columns{
    display:flex;
    gap:18px;
    overflow-x:auto;
    padding-bottom:14px;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
    scrollbar-color:#22c55e rgba(255,255,255,.06);
}
.scoutpro-compare-columns::-webkit-scrollbar{
    height:8px;
}
.scoutpro-compare-columns::-webkit-scrollbar-track{
    background:rgba(255,255,255,.05);
    border-radius:10px;
}
.scoutpro-compare-columns::-webkit-scrollbar-thumb{
    background:linear-gradient(90deg,#22c55e,#16a34a);
    border-radius:10px;
}
.scoutpro-compare-col{
    position:relative;
    flex:1 1 220px;
    min-width:220px;
    scroll-snap-align:start;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    border-radius:20px;
    padding:18px;
    text-align:center;
}
.scoutpro-compare-photo{
    width:100px;
    height:100px;
    margin:0 auto 12px;
    border-radius:18px;
    overflow:hidden;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
}
.scoutpro-compare-photo img{ width:100%; height:100%; object-fit:cover; }
.scoutpro-compare-name{
    display:block;
    color:#fff;
    font-size:18px;
    font-weight:900;
    text-decoration:none;
    margin-bottom:16px;
    text-transform:capitalize;
}
.scoutpro-compare-name:hover{ color:#22c55e; }
.scoutpro-compare-row{
    display:flex;
    justify-content:space-between;
    gap:10px;
    padding:10px 0;
    border-top:1px solid rgba(255,255,255,.08);
    font-size:13px;
}
.scoutpro-compare-row span{ color:#9fb0c7; font-weight:600; }
.scoutpro-compare-row strong{ color:#fff; font-weight:800; }
.scoutpro-compare-remove{
    position:absolute;
    top:10px;
    right:10px;
    z-index:2;
    width:26px;
    height:26px;
    padding:0;
    margin:0;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    color:#9fb0c7;
    font-size:12px;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    opacity:.7;
    transition:.2s;
}
.scoutpro-compare-remove:hover{
    opacity:1;
    background:rgba(239,68,68,.22);
    border-color:rgba(239,68,68,.5);
    color:#fecaca;
}
.scoutpro-compare-loading{ text-align:center; color:#9fb0c7; padding:40px; }

/* Leading stat highlight - ξεχωρίζει ποιος παίκτης έχει το καλύτερο νούμερο σε κάθε γραμμή */
.scoutpro-compare-row.scoutpro-compare-lead{
    background:rgba(34,197,94,.1);
    border-radius:10px;
    margin:0 -10px;
    padding:10px;
    border-top:1px solid rgba(34,197,94,.25);
}
.scoutpro-compare-row.scoutpro-compare-lead strong{
    color:#4ade80;
}
.scoutpro-compare-row.scoutpro-compare-lead strong:after{
    content:" 🏆";
}

@media(max-width:700px){
    .scoutpro-compare-modal{ padding:0; }
    .scoutpro-compare-modal-inner{ border-radius:0; max-height:100vh; height:100vh; }
    .scoutpro-compare-columns{ flex-wrap:nowrap; }
    .scoutpro-compare-col{ flex:0 0 82%; }
    .scoutpro-compare-fab{ right:16px; bottom:16px; padding:12px 18px; font-size:13px; }
}

/* ---------- Compare modal buttons - hardening against theme button styles (Betheme κ.λπ.) ---------- */
.scoutpro-compare-modal #scoutpro-compare-clear,
.scoutpro-compare-modal #scoutpro-compare-close{
    background:rgba(255,255,255,.08) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#eaf2ff !important;
    box-shadow:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    background-image:none !important;
}
.scoutpro-compare-modal .scoutpro-compare-remove{
    background:rgba(255,255,255,.07) !important;
    backdrop-filter:blur(10px) !important;
    -webkit-backdrop-filter:blur(10px) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#9fb0c7 !important;
    box-shadow:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    background-image:none !important;
    opacity:.7;
}
.scoutpro-compare-modal .scoutpro-compare-remove:hover{
    background:rgba(239,68,68,.22) !important;
    border-color:rgba(239,68,68,.5) !important;
    color:#fecaca !important;
    opacity:1;
}
.scoutpro-compare-modal #scoutpro-compare-close{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    font-size:16px !important;
    flex-shrink:0;
}
.scoutpro-compare-modal #scoutpro-compare-clear{
    height:40px !important;
    padding:0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    border-radius:12px !important;
}
.scoutpro-compare-modal .scoutpro-compare-remove{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    width:26px !important;
    height:26px !important;
    min-width:26px !important;
    max-width:26px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    font-size:12px !important;
}
.scoutpro-compare-modal-actions{
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
}
.scoutpro-compare-fab{
    background:linear-gradient(135deg,#22c55e,#16a34a) !important;
    background-image:linear-gradient(135deg,#22c55e,#16a34a) !important;
    color:#fff !important;
    box-shadow:0 18px 40px rgba(34,197,94,.35) !important;
    text-transform:none !important;
    letter-spacing:normal !important;
}
.scoutpro-compare-toggle{
    background:rgba(7,18,36,.65) !important;
    color:#fff !important;
    box-shadow:none !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    padding:0 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
}
.scoutpro-compare-toggle svg{
    width:16px !important;
    height:16px !important;
    display:block !important;
}
.scoutpro-compare-toggle.added{
    background:linear-gradient(135deg,#22c55e,#16a34a) !important;
    background-image:linear-gradient(135deg,#22c55e,#16a34a) !important;
}

/* ---------- Follow heart (δίπλα στο compare) ---------- */
.scoutpro-follow-toggle{
    position:absolute;
    top:10px;
    right:50px;
    z-index:5;
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(7,18,36,.65);
    color:#fff;
    font-size:17px;
    line-height:1;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.2s;
    backdrop-filter:blur(6px);
}
.scoutpro-follow-toggle:hover{ background:rgba(239,68,68,.3); border-color:rgba(239,68,68,.55); }
.scoutpro-follow-toggle.active{
    background:linear-gradient(135deg,#f43f5e,#e11d48);
    border-color:transparent;
    color:#fff;
}

/* ---------- Notification bell ---------- */
.scoutpro-bell{
    position:fixed;
    left:24px;
    bottom:24px;
    z-index:99998;
    width:46px;
    height:46px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    color:#eaf2ff;
    font-size:17px;
    opacity:.75;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(0,0,0,.25);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.2s;
}
.scoutpro-bell:hover{
    opacity:1;
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.3);
}
.scoutpro-bell-count{
    position:absolute;
    top:-3px;
    right:-3px;
    min-width:18px;
    height:18px;
    padding:0 4px;
    border-radius:999px;
    background:#ef4444;
    color:#fff;
    font-size:10px;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 0 0 2px rgba(7,18,36,.8);
}
.scoutpro-bell-panel{
    position:fixed;
    left:24px;
    bottom:78px;
    z-index:99998;
    width:340px;
    max-width:calc(100vw - 48px);
    max-height:70vh;
    overflow:auto;
    background:rgba(11,23,48,.75);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.16);
    border-radius:20px;
    box-shadow:0 24px 60px rgba(0,0,0,.35);
    color:#eaf2ff;
}
.scoutpro-bell-head{
    position:sticky;
    top:0;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:16px 18px;
    background:rgba(255,255,255,.06);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(255,255,255,.12);
}
.scoutpro-bell-head strong{ font-size:15px; }
#scoutpro-bell-mark-all{
    border:0;
    background:none;
    color:#22c55e;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
    text-decoration:underline;
}
.scoutpro-bell-list{ padding:6px; }
.scoutpro-bell-empty{ padding:20px; text-align:center; color:#9fb0c7; font-size:13px; }
.scoutpro-bell-item{
    display:flex;
    gap:10px;
    align-items:flex-start;
    padding:12px;
    border-radius:12px;
    text-decoration:none;
    color:#eaf2ff;
}
.scoutpro-bell-item:hover{ background:rgba(255,255,255,.06); }
.scoutpro-bell-item.unread{ background:rgba(34,197,94,.08); }
.scoutpro-bell-icon{ font-size:18px; }
.scoutpro-bell-text{ font-size:13px; line-height:1.4; }
.scoutpro-bell-text small{ display:block; color:#9fb0c7; font-size:11px; margin-top:3px; }

/* ---------- Album (flip cards) ---------- */
.scoutpro-album{
    max-width:1300px;
    margin:0 auto;
    padding:40px 20px;
    color:#fff;
}
.album-header{
    display:flex;
    justify-content:space-between;
    gap:25px;
    align-items:center;
    flex-wrap:wrap;
    margin-bottom:28px;
}
.album-header h1{ margin:0; font-size:34px; }
.album-header p{ margin:8px 0 0; color:#aab6c4; }
.album-search input{
    width:360px;
    max-width:100%;
    padding:16px 20px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.05);
    color:#fff;
    outline:none;
}
.album-tabs{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-bottom:35px;
}
.album-tabs button{
    position:relative;
    padding:14px 22px;
    border-radius:13px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.04);
    color:#fff;
    cursor:pointer;
}
.album-tabs button.active{
    background:linear-gradient(135deg,#22d873,#0f7049);
    box-shadow:0 0 25px rgba(34,216,115,.35);
}
#scoutpro-album-new-folder{
    background:transparent;
    border-style:dashed;
}
.album-folder-delete{
    margin-left:8px;
    opacity:.5;
    cursor:pointer;
}
.album-folder-delete:hover{ opacity:1; color:#f87171; }

.players-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));
    gap:28px;
}
.player-card{
    height:450px;
    perspective:1200px;
}
.card-inner{
    width:100%;
    height:100%;
    position:relative;
    transition:transform .8s;
    transform-style:preserve-3d;
}
.player-card:hover .card-inner{
    transform:rotateY(180deg);
}
.card-front,
.card-back{
    position:absolute;
    inset:0;
    padding:22px;
    border-radius:24px;
    overflow:hidden;
    backface-visibility:hidden;
    border:1px solid rgba(48,255,137,.35);
    background:
        linear-gradient(160deg, rgba(9,35,55,.96), rgba(4,16,28,.98)),
        radial-gradient(circle at top, rgba(32,208,111,.18), transparent 45%);
    box-shadow:0 0 28px rgba(28,207,113,.15);
}
.card-back{
    transform:rotateY(180deg);
    display:flex;
    flex-direction:column;
}
.card-front::before,
.card-back::before{
    content:"";
    position:absolute;
    inset:10px;
    border-radius:20px;
    border:1px solid rgba(54,255,142,.25);
    pointer-events:none;
}
/* Ειδοποίηση "κάτι άλλαξε" - το περίγραμμα γίνεται χρυσό/πορτοκαλί μέχρι να ανοίξει ο χρήστης το προφίλ */
.card-inner.has-alert .card-front,
.card-inner.has-alert .card-back{
    border-color:#fbbf24;
    box-shadow:0 0 0 2px rgba(251,191,36,.35), 0 0 28px rgba(251,191,36,.25);
    animation:scoutpro-alert-pulse 2s ease-in-out infinite;
}
@keyframes scoutpro-alert-pulse{
    0%,100%{ box-shadow:0 0 0 2px rgba(251,191,36,.35), 0 0 28px rgba(251,191,36,.25); }
    50%{ box-shadow:0 0 0 4px rgba(251,191,36,.55), 0 0 34px rgba(251,191,36,.4); }
}

.shirt-num{
    position:absolute;
    top:18px;
    left:18px;
    color:#45f38a;
    font-weight:800;
    font-size:18px;
    z-index:3;
}
.player-card .follow-btn,
.player-card .scoutpro-compare-toggle{
    position:absolute;
    top:17px;
    z-index:4;
    width:38px;
    height:38px;
    border-radius:50%;
    border:0;
    background:rgba(255,255,255,.06);
    color:#fff;
    font-size:18px;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
}
.player-card .follow-btn{ right:64px; }
.player-card .scoutpro-compare-toggle{ right:18px; }
.player-card .follow-btn.active{ background:linear-gradient(135deg,#f43f5e,#e11d48); }
.player-card .scoutpro-compare-toggle.added{ background:#22d873; color:#062016; }

.player-photo{
    height:220px;
    margin:-10px -10px 14px;
}
.player-photo img,
.player-photo .sp-photo-placeholder{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:18px;
}
.player-info span{ font-size:13px; color:#b8c5d1; }
.player-info h2{ margin:4px 0 12px; font-size:25px; line-height:1; text-transform:capitalize; color:#fff; }
.player-info p{ margin:5px 0; color:#d6e0e8; font-size:14px; }
.player-info .team{ color:#25e87e; font-weight:700; }

.card-back h3{ text-align:center; margin:42px 0 24px; font-size:20px; line-height:1.2; color:#fff; }
.card-back h3 strong{ font-size:25px; color:#fff; }
.details p{
    display:flex;
    justify-content:space-between;
    border-bottom:1px solid rgba(255,255,255,.08);
    padding:8px 0;
    margin:0;
    font-size:14px;
}
.details span{ color:#aab6c4; }

.album-card-actions{
    margin-top:auto;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.album-view-link{
    text-align:center;
    padding:10px;
    border-radius:12px;
    background:rgba(34,197,94,.15);
    color:#4ade80;
    text-decoration:none;
    font-weight:800;
    font-size:13px;
}
.album-folder-select{
    width:100%;
    padding:8px 26px 8px 10px;
    border-radius:10px;
    border:1px solid rgba(255,255,255,.15);
    background-color:rgba(20,32,58,.9);
    color:#fff;
    font-size:12px;
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 5l6.5 6 6.5-6'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 8px center;
}

@media(max-width:768px){
    .scoutpro-album{ padding:22px 14px; }
    .album-header{ flex-direction:column; align-items:flex-start; }
    .album-search, .album-search input{ width:100%; }
    .players-grid{ grid-template-columns:1fr; }
}

/* ---------- Hardening: follow/album buttons vs theme button styles ---------- */
.scoutpro-follow-toggle,
.player-card .follow-btn,
.player-card .scoutpro-compare-toggle,
.scoutpro-bell,
.album-tabs button,
.album-view-link{
    box-shadow:none !important;
    text-transform:none !important;
    letter-spacing:normal !important;
    background-image:none !important;
}
.scoutpro-follow-toggle{
    background:rgba(7,18,36,.65) !important;
    color:#fff !important;
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    max-width:34px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:50% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    font-size:17px !important;
}
.scoutpro-follow-toggle.active{ background:linear-gradient(135deg,#f43f5e,#e11d48) !important; background-image:linear-gradient(135deg,#f43f5e,#e11d48) !important; }
.player-card .follow-btn{ background:rgba(255,255,255,.06) !important; color:#fff !important; width:38px !important; height:38px !important; padding:0 !important; border-radius:50% !important; }
.player-card .follow-btn.active{ background:linear-gradient(135deg,#f43f5e,#e11d48) !important; background-image:linear-gradient(135deg,#f43f5e,#e11d48) !important; }
.player-card .scoutpro-compare-toggle{ width:38px !important; height:38px !important; padding:0 !important; border-radius:50% !important; }
.album-tabs button{ background:rgba(255,255,255,.04) !important; color:#fff !important; border:1px solid rgba(255,255,255,.14) !important; }
.album-tabs button.active{ background:linear-gradient(135deg,#22d873,#0f7049) !important; background-image:linear-gradient(135deg,#22d873,#0f7049) !important; color:#fff !important; }

/* "+ Νέος Φάκελος" - ξεχωρίζει επίτηδες από τους κανονικούς φακέλους (διακεκομμένο περίγραμμα, διάφανο φόντο) */
#scoutpro-album-new-folder{
    background:transparent !important;
    border:1px dashed rgba(34,197,94,.5) !important;
    color:#4ade80 !important;
    font-weight:800 !important;
}
#scoutpro-album-new-folder:hover{
    background:rgba(34,197,94,.1) !important;
    border-color:#22c55e !important;
}

/* Γενική θωράκιση κειμένου στο Album - βάση λευκό, με ρητές εξαιρέσεις για ό,τι θέλουμε πιο απαλό/έγχρωμο */
.scoutpro-album h1,
.scoutpro-album h2,
.scoutpro-album h3,
.scoutpro-album h4,
.scoutpro-album strong{
    color:#fff !important;
}
.album-header p{ color:#aab6c4 !important; }
.player-info span:not(.team){ color:#b8c5d1 !important; }
.player-info .team{ color:#25e87e !important; }
.details span{ color:#aab6c4 !important; }
.scoutpro-notice{ color:#9fb0c7 !important; }

/* Dropdown του φακέλου - σκούρα θέματα options (δουλεύει σε Chrome/Edge· περιορισμένη υποστήριξη στο Firefox) */
.album-folder-select option{
    background:#0b1730;
    color:#fff;
}
.album-folder-select{
    background-color:rgba(20,32,58,.9) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.15) !important;
    box-shadow:none !important;
}

/* ---------- Team roster page ---------- */
.scoutpro-team-roster{
    max-width:1300px;
    margin:0 auto;
    padding:40px 20px;
}
.team-roster-head{ margin-bottom:28px; }
.team-roster-head h1{ margin:0; font-size:32px; color:#fff; }
.team-roster-head p{ margin:6px 0 0; color:#9fb0c7; }

/* ---------- Leaderboard ---------- */
.scoutpro-leaderboard{
    max-width:1300px;
    margin:0 auto;
    padding:30px 20px;
}
.leaderboard-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
    flex-wrap:wrap;
    gap:12px;
}
.leaderboard-head h2{ margin:0; font-size:24px; color:#fff; }
.leaderboard-nav{ display:flex; gap:8px; }
.leaderboard-prev, .leaderboard-next{
    width:38px;
    height:38px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.07);
    backdrop-filter:blur(10px);
    color:#eaf2ff;
    cursor:pointer;
    font-size:16px;
}
.leaderboard-prev:hover, .leaderboard-next:hover{ background:rgba(255,255,255,.14); }

.scoutpro-leaderboard-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));
    gap:18px;
}
.scoutpro-leaderboard-carousel{
    display:flex;
    gap:18px;
    overflow-x:auto;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    padding-bottom:10px;
    scrollbar-width:thin;
    scrollbar-color:#22c55e rgba(255,255,255,.06);
}
.scoutpro-leaderboard-carousel::-webkit-scrollbar{ height:8px; }
.scoutpro-leaderboard-carousel::-webkit-scrollbar-track{ background:rgba(255,255,255,.05); border-radius:10px; }
.scoutpro-leaderboard-carousel::-webkit-scrollbar-thumb{ background:linear-gradient(90deg,#22c55e,#16a34a); border-radius:10px; }
.scoutpro-leaderboard-carousel .leaderboard-card{ flex:0 0 200px; scroll-snap-align:start; }

.leaderboard-card{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
    padding:20px 14px;
    border-radius:20px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    text-decoration:none;
    transition:.2s;
}
.leaderboard-card:hover{
    transform:translateY(-4px);
    border-color:rgba(34,197,94,.4);
    background:rgba(255,255,255,.09);
}
.leaderboard-rank{
    position:absolute;
    top:10px;
    left:10px;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    color:#fff;
    font-size:11px;
    font-weight:900;
    padding:3px 9px;
    border-radius:999px;
}
.leaderboard-photo{
    width:76px;
    height:76px;
    border-radius:50%;
    overflow:hidden;
    margin-top:10px;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
}
.leaderboard-photo img{ width:100%; height:100%; object-fit:cover; }
.leaderboard-name{ color:#fff; font-size:15px; font-weight:800; text-transform:capitalize; }
.leaderboard-meta{ color:#9fb0c7; font-size:12px; }
.leaderboard-stat{ margin-top:4px; color:#4ade80; font-weight:900; font-size:18px; }
.leaderboard-stat small{ color:#9fb0c7; font-weight:600; font-size:11px; }

/* ---------- Similar players ---------- */
.scoutpro-similar-players{
    max-width:1300px;
    margin:30px auto 0;
    padding:0 20px;
}
.scoutpro-similar-heading{
    margin:0 0 16px;
    font-size:18px;
    color:#fff;
    font-weight:800;
}
.scoutpro-similar-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));
    gap:14px;
}
.scoutpro-similar-card{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
    padding:16px 10px;
    border-radius:16px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    text-decoration:none;
    transition:.2s;
}
.scoutpro-similar-card:hover{
    border-color:rgba(34,197,94,.4);
    background:rgba(255,255,255,.09);
}
.scoutpro-similar-photo{
    width:64px;
    height:64px;
    border-radius:50%;
    overflow:hidden;
    background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.04));
}
.scoutpro-similar-photo img{ width:100%; height:100%; object-fit:cover; }
.scoutpro-similar-card strong{ color:#fff; font-size:13px; text-transform:capitalize; }
.scoutpro-similar-card span{ color:#9fb0c7; font-size:11px; }

@media(max-width:700px){
    .scoutpro-leaderboard-grid{ grid-template-columns:repeat(2,1fr); }
    .scoutpro-similar-grid{ grid-template-columns:repeat(2,1fr); }
}
