:root{
  --navy:#0c1430;
  --navy-2:#152052;
  --blue:#2f5bff;
  --blue-2:#6d94ff;
  --blue-light:#eef3ff;
  --text:#0c1430;
  --muted:#5c657c;
  --white:#ffffff;
  --line:#e8ecf6;
}

/* ===== Clean up the auto-generated page-list nav on non-Home pages ===== */
.wp-block-navigation a[href*="/algemene-voorwaarden/"],
.wp-block-navigation a[href*="/sample-page/"],
.wp-block-navigation a[href*="/pers/"],
.wp-block-navigation a[href*="/privacybeleid/"],
.wp-block-navigation a[href*="/password-reset/"]{
  display:none !important;
}
.wp-block-navigation li:has(> a[href*="/algemene-voorwaarden/"]),
.wp-block-navigation li:has(> a[href*="/sample-page/"]),
.wp-block-navigation li:has(> a[href*="/pers/"]),
.wp-block-navigation li:has(> a[href*="/privacybeleid/"]),
.wp-block-navigation li:has(> a[href*="/password-reset/"]){
  display:none !important;
}

/* ===== Site header (theme block header used on all non-Elementor pages) ===== */
header.wp-block-template-part{
  background:var(--navy) !important;
}
header.wp-block-template-part .wp-block-site-title a{
  color:#fff !important;
  font-weight:800;
  font-family:'Manrope',sans-serif;
}
header.wp-block-template-part .wp-block-pages-list__item__link,
header.wp-block-template-part .wp-block-navigation-item__content{
  color:#c7d2f5 !important;
  font-weight:600;
  transition:color .15s;
}
header.wp-block-template-part .wp-block-pages-list__item__link:hover{
  color:#fff !important;
}
header.wp-block-template-part a[href*="/login/"]{
  color:#fff !important;
  border:1.5px solid rgba(255,255,255,.35) !important;
  border-radius:999px !important;
  padding:8px 20px !important;
}
header.wp-block-template-part a[href*="/login/"]:hover{
  border-color:#fff !important;
}
header.wp-block-template-part svg path{ fill:#fff; }
header.wp-block-template-part button.wp-block-navigation__responsive-container-open svg{ fill:#fff; stroke:#fff; }

/* ===== Footer ===== */
footer.wp-block-template-part{
  background:var(--blue-light);
}
footer.wp-block-template-part .wp-block-site-title a{
  color:var(--navy) !important;
  font-family:'Manrope',sans-serif;
  font-weight:800;
}
footer.wp-block-template-part a{ color:var(--muted); }
footer.wp-block-template-part a:hover{ color:var(--blue); }

/* ===== BuddyPress global reskin ===== */
#buddypress{
  font-family:'Manrope',sans-serif;
  color:var(--text);
}
.wp-block-post-title{
  color:var(--navy);
  font-weight:800;
}

#buddypress div.item-list-tabs ul,
#buddypress .bp-navs ul{
  border-bottom:1px solid var(--line);
  gap:4px;
}
#buddypress div.item-list-tabs ul li a,
#buddypress .bp-navs ul li a{
  color:var(--muted);
  font-weight:700;
  border-radius:10px 10px 0 0;
  padding:10px 16px;
}
#buddypress div.item-list-tabs ul li.selected a,
#buddypress div.item-list-tabs ul li a:hover,
#buddypress .bp-navs ul li.selected a,
#buddypress .bp-navs ul li a:hover{
  color:var(--blue);
  background:var(--blue-light);
}
#buddypress div.item-list-tabs ul li.current a{
  color:var(--blue);
  background:var(--blue-light);
}

#buddypress a.button,
#buddypress .generic-button a,
#buddypress input[type="submit"],
#buddypress button[type="submit"],
#buddypress .standard-form .submit input{
  background:linear-gradient(135deg,var(--blue),var(--blue-2)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  padding:10px 22px !important;
  font-weight:700 !important;
  box-shadow:0 10px 22px -8px rgba(47,91,255,.5);
  transition:opacity .15s;
}
#buddypress a.button:hover,
#buddypress .generic-button a:hover,
#buddypress input[type="submit"]:hover,
#buddypress button[type="submit"]:hover{
  opacity:.9;
}

#buddypress input[type="text"],
#buddypress input[type="email"],
#buddypress input[type="password"],
#buddypress input[type="tel"],
#buddypress input[type="number"],
#buddypress input[type="search"],
#buddypress select,
#buddypress textarea{
  border:1.5px solid var(--line) !important;
  border-radius:10px !important;
  padding:12px 16px !important;
  font-family:'Manrope',sans-serif;
  color:var(--text);
}
#buddypress input:focus,
#buddypress select:focus,
#buddypress textarea:focus{
  outline:none;
  border-color:var(--blue) !important;
  box-shadow:0 0 0 3px rgba(47,91,255,.12);
}
#buddypress label{
  color:var(--navy);
  font-weight:700;
  font-size:13.5px;
}

#buddypress .bp-feedback{
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--blue-light);
  color:var(--navy);
  padding:14px 18px;
}
#buddypress .bp-feedback.info .bp-icon{ color:var(--blue); }
#buddypress .bp-feedback.error,
#buddypress .bp-feedback.warning{
  background:#fdecec;
  border-color:#f4c2c2;
  color:#a3271f;
}

#buddypress .members-list li,
#buddypress .item-list li,
#buddypress .groups-list li{
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  transition:box-shadow .15s, transform .15s;
}
#buddypress .members-list li:hover,
#buddypress .groups-list li:hover{
  box-shadow:0 14px 30px -14px rgba(12,20,48,.25);
  transform:translateY(-2px);
}
#buddypress .item-avatar img.avatar{
  border-radius:12px;
}
#buddypress .item .item-title a,
#buddypress .item-title a{
  color:var(--navy);
  font-weight:800;
}
#buddypress .item-title a:hover{ color:var(--blue); }

#buddypress .bp-search-form,
#buddypress .dir-search{
  background:#fff;
}
#buddypress .bp-search-form input[type="search"],
#buddypress .bp-search-form input[type="text"]{
  border-radius:999px !important;
}

#buddypress .activity-list .activity-item{
  border-bottom:1px solid var(--line);
}
#buddypress .activity-list .activity-content .activity-header a{
  color:var(--navy);
  font-weight:700;
}
#buddypress #whats-new-form{
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  padding:16px;
}
#buddypress #whats-new{
  border-radius:12px !important;
}

#buddypress .pagination-links a,
#buddypress .pagination-links span{
  border-radius:8px;
}
#buddypress .pagination-links span.current{
  background:var(--blue);
  color:#fff;
  padding:4px 10px;
  border-radius:8px;
}


/* Group creation wizard step nav (ol.button-tabs, not a ul) */
#buddypress .group-create-buttons,
#buddypress ol.button-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  list-style:none;
  padding:0;
  margin:0 0 20px 0;
  border-bottom:1px solid var(--line);
}
#buddypress .group-create-buttons li,
#buddypress ol.button-tabs li{
  margin:0;
}
#buddypress .group-create-buttons li a,
#buddypress .group-create-buttons li span,
#buddypress ol.button-tabs li a,
#buddypress ol.button-tabs li span{
  display:inline-block;
  padding:10px 16px;
  color:var(--muted);
  font-weight:700;
  border-radius:10px 10px 0 0;
  text-decoration:none;
}
#buddypress .group-create-buttons li.current a,
#buddypress .group-create-buttons li.current span,
#buddypress ol.button-tabs li.current a,
#buddypress ol.button-tabs li.current span{
  color:var(--blue);
  background:var(--blue-light);
}

/* Generic fallback: any other BP tab-like ol lists */
#buddypress .bp-navs ol{
  border-bottom:1px solid var(--line);
  display:flex;
  gap:4px;
  list-style:none;
  padding:0;
}
#buddypress .bp-navs ol li a,
#buddypress .bp-navs ol li span{
  padding:10px 16px;
  font-weight:700;
  color:var(--muted);
  border-radius:10px 10px 0 0;
}
#buddypress .bp-navs ol li.current a,
#buddypress .bp-navs ol li.current span{
  color:var(--blue);
  background:var(--blue-light);
}


/* ===== Ultimate Member Account page (fallback page, no BP equivalent) ===== */
.um-page .um-button,
.um-page input[type="submit"],
.um-page button[type="submit"]{
  background:linear-gradient(135deg,var(--blue),var(--blue-2)) !important;
  border-color:transparent !important;
  color:#fff !important;
  border-radius:999px !important;
  font-weight:700 !important;
  box-shadow:0 10px 22px -8px rgba(47,91,255,.5);
}
.um-page .um-button.um_account_inactive{
  background:#f2f4fa !important;
  color:var(--muted) !important;
  box-shadow:none;
}
.um-page .um-account-link.current,
.um-page .um-account-nav .current{
  color:var(--blue) !important;
  font-weight:700;
}
.um-page .um-account-link:hover{
  color:var(--blue) !important;
}
.um-page input[type="text"],
.um-page input[type="email"],
.um-page input[type="password"]{
  border-color:var(--line) !important;
}
.um-page input[type="text"]:focus,
.um-page input[type="email"]:focus,
.um-page input[type="password"]:focus{
  border-color:var(--blue) !important;
  box-shadow:0 0 0 3px rgba(47,91,255,.12) !important;
}
.um-page h1, .um-page h2, .um-page h3{
  color:var(--navy);
}
.um-page a{ color:var(--blue); }


/* ===== Members / Groups directory: real card grid instead of flat list ===== */
#buddypress .members-list.item-list,
#buddypress .groups-list.item-list{
  display:flex !important;
  flex-wrap:wrap;
  gap:20px;
  list-style:none;
  padding:0;
}
#buddypress .members-list.item-list .item-entry,
#buddypress .groups-list.item-list .item-entry{
  flex:1 1 220px;
  max-width:calc(33.333% - 14px);
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  margin:0 !important;
}
@media (max-width:900px){
  #buddypress .members-list.item-list .item-entry,
  #buddypress .groups-list.item-list .item-entry{
    max-width:calc(50% - 10px);
  }
}
@media (max-width:600px){
  #buddypress .members-list.item-list .item-entry,
  #buddypress .groups-list.item-list .item-entry{
    max-width:100%;
  }
}
#buddypress .members-list .list-wrap,
#buddypress .groups-list .list-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:28px 18px;
}
#buddypress .members-list .item-avatar,
#buddypress .groups-list .item-avatar{
  margin-bottom:16px;
}
#buddypress .members-list .item-avatar img.avatar,
#buddypress .groups-list .item-avatar img.avatar{
  width:96px;
  height:96px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid var(--blue-light);
}
#buddypress .members-list .item-block,
#buddypress .groups-list .item-block{
  width:100%;
}
#buddypress .members-list .list-title.member-name,
#buddypress .groups-list .list-title{
  font-size:17px;
  margin:0 0 6px 0;
  line-height:1.3;
}
#buddypress .members-list .list-title.member-name a,
#buddypress .groups-list .list-title a{
  color:var(--navy);
  font-weight:800;
}
#buddypress .members-list .item-meta,
#buddypress .groups-list .item-meta,
#buddypress .groups-list .item-desc{
  color:var(--muted);
  font-size:13px;
  margin-top:2px;
}
#buddypress .members-list .item-entry:hover,
#buddypress .groups-list .item-entry:hover{
  box-shadow:0 14px 30px -14px rgba(12,20,48,.25);
  transform:translateY(-2px);
  transition:box-shadow .15s, transform .15s;
}
@media (max-width:600px){
  #buddypress .members-list .list-wrap,
  #buddypress .groups-list .list-wrap{
    padding:18px 12px;
  }
}


/* ===== Member card v2: photo-first layout with club/location/age/type ===== */
#buddypress .members-list.item-list .list-wrap{
  padding:0 0 20px 0;
  align-items:stretch;
}
#buddypress .members-list.item-list .item-avatar{
  position:relative;
  margin:0 0 16px 0;
  width:100%;
}
#buddypress .members-list.item-list .item-avatar img.avatar{
  width:100%;
  height:220px;
  border-radius:0;
  border:none;
  object-fit:cover;
  display:block;
}
#buddypress .members-list.item-list .item-block{
  padding:0 18px 20px 18px;
}
.ttp-member-badge-wrap{
  position:absolute;
  top:12px;
  left:12px;
}
.ttp-member-badge{
  display:inline-block;
  padding:4px 12px;
  border-radius:999px;
  font-size:11.5px;
  font-weight:800;
  letter-spacing:.02em;
  color:#fff;
  background:linear-gradient(135deg,var(--blue),var(--blue-2));
  box-shadow:0 6px 14px -4px rgba(12,20,48,.4);
}
.ttp-badge-club{ background:linear-gradient(135deg,#152052,#2f5bff); }
.ttp-badge-scheidsrechter{ background:linear-gradient(135deg,#000,#444); }
.ttp-badge-zaakwaarnemer{ background:linear-gradient(135deg,#b8860b,#e0b23a); }

.ttp-member-meta{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:10px;
  padding-top:10px;
  border-top:1px solid var(--line);
}
.ttp-meta-item{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--muted);
  font-size:13px;
}
.ttp-meta-item svg{
  flex-shrink:0;
  color:var(--blue);
}

@media (max-width:600px){
  #buddypress .members-list.item-list .item-avatar img.avatar{
    height:170px;
  }
}

.ttp-member-meta{ width:100% !important; box-sizing:border-box; }
.ttp-meta-item{ width:100%; }


/* ===== TTP v3: header + ledenzoeker ===== */
header.wp-block-template-part{position:sticky;top:0;z-index:60;padding:0 !important;}
body.admin-bar header.wp-block-template-part{top:32px;}
.ttp-hdr-in{max-width:1240px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.ttp-logo{color:#fff !important;font-weight:800;font-size:20px;text-decoration:none;font-family:'Manrope',sans-serif;white-space:nowrap;}
.ttp-nav{display:flex;align-items:center;gap:4px;}
.ttp-nav a{color:#c7d2f5 !important;text-decoration:none;font-weight:600;font-size:15px;padding:8px 14px;border-radius:999px;border:none !important;transition:background .15s,color .15s;white-space:nowrap;}
.ttp-nav a:hover,.ttp-nav a.on{color:#fff !important;background:rgba(255,255,255,.12);}
.ttp-nav a.ttp-cta{background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff !important;padding:8px 18px;}
.ttp-in{display:none !important;}
body.logged-in .ttp-in{display:inline-flex !important;}
body.logged-in .ttp-anon{display:none !important;}
@media (max-width:760px){.ttp-hdr-in{padding:0 14px;}.ttp-nav a{padding:8px 10px;font-size:14px;}.ttp-nav .ttp-hide-m{display:none !important;}.ttp-logo{font-size:17px;}}

body.ttp-dir-active{background:#f3f6fb !important;}
body.ttp-dir-active #buddypress,body.ttp-dir-active .wp-block-post-title{display:none !important;}
body.ttp-dir-active main{margin-top:0 !important;}
body.ttp-dir-active main > .wp-block-group{padding-top:28px !important;padding-bottom:56px !important;}
body.ttp-dir-active main .is-layout-constrained > *{max-width:none !important;}
body.ttp-dir-active main #ttp-dir{max-width:1240px;margin-left:auto !important;margin-right:auto !important;}
#ttp-dir{font-family:'Manrope',sans-serif;color:#0c1430;}
.ttp-dir-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:22px;}
.ttp-dir-title{font-size:34px;font-weight:800;margin:0;color:#0c1430;letter-spacing:-.01em;}
.ttp-dir-count{font-size:20px;font-weight:600;color:#5c657c;}
.ttp-dir-sub{margin:4px 0 0;color:#5c657c;font-size:15px;}
.ttp-dir-tools{display:flex;gap:10px;align-items:center;}
#ttp-dir select,#ttp-dir input[type="text"],#ttp-dir input[type="search"],#ttp-dir input[type="number"]{border:1.5px solid #e1e7f5 !important;border-radius:10px !important;padding:10px 12px !important;font-size:14.5px;font-family:inherit;background:#fff;color:#0c1430;width:100%;box-sizing:border-box;}
#ttp-dir .ttp-dir-tools select{width:auto;}
#ttp-dir input:focus,#ttp-dir select:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
.ttp-filter-toggle{display:none;background:#fff;border:1.5px solid #e1e7f5;border-radius:10px;padding:10px 16px;font-weight:700;color:#0c1430;cursor:pointer;font-family:inherit;}
.ttp-dir-body{display:grid;grid-template-columns:290px 1fr;gap:24px;align-items:start;}
.ttp-filters{background:#fff;border:1px solid #e8ecf6;border-radius:16px;padding:22px;position:sticky;top:96px;box-shadow:0 10px 30px -18px rgba(12,20,48,.25);}
.ttp-f-block{margin-bottom:20px;}
.ttp-f-block:last-of-type{margin-bottom:14px;}
.ttp-f-title{display:block;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff;margin-bottom:8px;}
.ttp-f-row{display:flex;align-items:center;gap:8px;color:#5c657c;font-size:14px;}
.ttp-check{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer;font-size:15px;}
.ttp-check input{width:17px;height:17px;accent-color:#2f5bff;margin:0;}
.ttp-check-l{flex:1;}
.ttp-check-n{color:#8a93a8;font-size:13px;}
.ttp-reset{width:100%;background:#eef3ff;color:#2f5bff;border:none;border-radius:999px;padding:11px;font-weight:700;cursor:pointer;font-family:inherit;}
.ttp-reset:hover{background:#e0e9ff;}
.ttp-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;}
.ttp-chips:empty{display:none;}
.ttp-chip{background:#e8eeff;color:#2f5bff;border:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;}
.ttp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;}
.ttp-card{background:#fff;border:1px solid #e8ecf6;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s,transform .18s;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);}
.ttp-card:hover{box-shadow:0 18px 36px -16px rgba(12,20,48,.35);transform:translateY(-3px);}
.ttp-card-photo{position:relative;display:block;aspect-ratio:4/4.4;background:#dfe6f7;overflow:hidden;}
.ttp-card-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.ttp-noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(150deg,#152052,#2f5bff);}
.ttp-noimg span{color:#fff;font-size:52px;font-weight:800;letter-spacing:.02em;opacity:.92;}
.ttp-badge{position:absolute;top:12px;left:12px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:800;color:#fff;background:linear-gradient(135deg,#2f5bff,#6d94ff);box-shadow:0 6px 14px -4px rgba(12,20,48,.45);}
.ttp-b-club{background:linear-gradient(135deg,#0c1430,#2f5bff);}
.ttp-b-scheidsrechter{background:linear-gradient(135deg,#111,#444);}
.ttp-b-zaakwaarnemer{background:linear-gradient(135deg,#b8860b,#e0b23a);}
.ttp-card-body{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.ttp-card-name{margin:0;font-size:17px;font-weight:800;line-height:1.25;display:flex;align-items:baseline;gap:8px;}
.ttp-card-name a{color:#0c1430;text-decoration:none;}
.ttp-card-name a:hover{color:#2f5bff;}
.ttp-age{color:#5c657c;font-weight:600;font-size:14px;}
.ttp-row{display:flex;align-items:center;gap:8px;color:#5c657c;font-size:14px;}
.ttp-row svg{flex-shrink:0;color:#2f5bff;}
.ttp-row-empty{color:#98a0b3;font-style:italic;}
.ttp-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:10px;}
.ttp-btn{flex:1;text-align:center;justify-content:center;padding:9px 12px;border-radius:999px;font-weight:700;font-size:14px;text-decoration:none;border:1.5px solid transparent;font-family:inherit;}
.ttp-btn-primary{background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff !important;}
.ttp-btn-ghost{background:#fff;color:#2f5bff !important;border-color:#cdd9ff;}
.ttp-btn-ghost:hover{background:#eef3ff;}
.ttp-more-wrap{text-align:center;margin-top:28px;}
.ttp-more{background:#fff;border:1.5px solid #cdd9ff;color:#2f5bff;border-radius:999px;padding:12px 28px;font-weight:800;cursor:pointer;font-family:inherit;display:none;}
.ttp-empty,.ttp-loading{grid-column:1/-1;text-align:center;color:#5c657c;padding:48px 16px;background:#fff;border:1px dashed #cdd9ff;border-radius:16px;}
.ttp-empty strong{color:#0c1430;font-size:18px;}
@media (max-width:900px){
  .ttp-dir-body{grid-template-columns:1fr;}
  .ttp-filter-toggle{display:inline-block;}
  .ttp-filters{display:none;position:static;}
  .ttp-filters.open{display:block;}
  .ttp-dir-title{font-size:28px;}
  .ttp-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}
}

body.ttp-dir-active main #ttp-dir{max-width:1240px !important;margin-left:auto !important;margin-right:auto !important;width:100%;}
.ttp-card-photo,.ttp-card-photo:hover{text-decoration:none !important;}
.ttp-noimg span{text-decoration:none;}
.ttp-btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:9px 10px;font-size:13.5px;}
.ttp-card-actions{flex-wrap:nowrap;}
.ttp-dir-head{align-items:center;}
.ttp-hdr-in{max-width:1240px;}


/* ===== TTP v3: profielpagina ===== */
body.ttp-prof{background:#f3f6fb !important;}
body.ttp-prof #item-header,body.ttp-prof .wp-block-post-title{display:none !important;}
body.ttp-prof main{margin-top:0 !important;}
body.ttp-prof main > .wp-block-group{padding-top:28px !important;padding-bottom:56px !important;}
body.ttp-prof main .is-layout-constrained > *{max-width:none !important;}
body.ttp-prof main #ttp-prof,body.ttp-prof main #buddypress{max-width:1040px !important;margin-left:auto !important;margin-right:auto !important;width:100%;}
body.ttp-prof-view #buddypress .profile.public{display:none !important;}
body.ttp-prof-view #buddypress .bp-wrap #subnav,body.ttp-prof-view:not(.my-profile) #buddypress .bp-wrap{display:none !important;}
body.ttp-prof:not(.my-profile) #buddypress #object-nav{display:none !important;}
#ttp-prof{font-family:'Manrope',sans-serif;color:#0c1430;}
.ttp-hero{background:#fff;border:1px solid #e8ecf6;border-radius:18px;overflow:hidden;box-shadow:0 12px 32px -20px rgba(12,20,48,.35);margin-bottom:20px;}
.ttp-cover{height:190px;background:radial-gradient(circle at 15% 20%,rgba(109,148,255,.55),transparent 45%),linear-gradient(120deg,#0c1430,#152052 55%,#2f5bff);}
.ttp-hero-body{display:flex;align-items:flex-end;gap:22px;padding:0 28px 26px;flex-wrap:wrap;}
.ttp-avatar{width:150px;height:150px;border-radius:50%;border:5px solid #fff;margin-top:-75px;background:linear-gradient(150deg,#152052,#2f5bff);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 10px 24px -10px rgba(12,20,48,.5);}
.ttp-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.ttp-avatar span{color:#fff;font-size:52px;font-weight:800;}
.ttp-hero-main{flex:1;min-width:240px;padding-top:14px;}
.ttp-hero-name{margin:0;font-size:30px;font-weight:800;line-height:1.2;display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#0c1430;}
.ttp-badge-inline{font-size:12.5px;font-weight:800;color:#fff;background:linear-gradient(135deg,#2f5bff,#6d94ff);border-radius:999px;padding:5px 13px;}
.ttp-badge-inline.ttp-b-club{background:linear-gradient(135deg,#0c1430,#2f5bff);}
.ttp-badge-inline.ttp-b-scheidsrechter{background:linear-gradient(135deg,#111,#444);}
.ttp-badge-inline.ttp-b-zaakwaarnemer{background:linear-gradient(135deg,#b8860b,#e0b23a);}
.ttp-headline{margin:6px 0 0;font-size:18px;color:#26304f;font-weight:600;}
.ttp-subline{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;color:#5c657c;font-size:14.5px;}
.ttp-subline svg{color:#2f5bff;margin-right:-8px;}
.ttp-muted{color:#8a93a8;}
.ttp-hero-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:14px;}
.ttp-hero-actions .ttp-btn{flex:none;padding:11px 22px;font-size:15px;}
.ttp-prof-grid{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start;}
.ttp-prof-main{display:flex;flex-direction:column;gap:20px;}
.ttp-card2{background:#fff;border:1px solid #e8ecf6;border-radius:16px;padding:24px 26px;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);}
.ttp-card2 h2{margin:0 0 12px;font-size:19px;font-weight:800;color:#0c1430;}
.ttp-card2 p{margin:0;line-height:1.65;color:#2b3555;font-size:15.5px;}
.ttp-card2 p.ttp-muted{color:#8a93a8;margin-bottom:14px;}
.ttp-dl{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px 24px;}
.ttp-dl-row dt{font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff;margin:0 0 3px;}
.ttp-dl-row dd{margin:0;font-size:16px;color:#0c1430;font-weight:600;}
.ttp-inline{display:inline-flex;margin-top:6px;padding:9px 20px;flex:none;}
.ttp-bar{height:10px;background:#e8eeff;border-radius:999px;overflow:hidden;}
.ttp-bar-fill{height:100%;background:linear-gradient(90deg,#2f5bff,#6d94ff);border-radius:999px;}
.ttp-pct{font-weight:800;margin:10px 0 14px !important;font-size:15px !important;}
.ttp-todo{margin:0 0 16px;padding-left:18px;color:#5c657c;font-size:14.5px;line-height:1.7;}
@media (max-width:900px){
  .ttp-prof-grid{grid-template-columns:1fr;}
  .ttp-cover{height:130px;}
  .ttp-avatar{width:112px;height:112px;margin-top:-56px;}
  .ttp-hero-body{padding:0 18px 20px;}
  .ttp-hero-name{font-size:24px;}
}

body.ttp-prof-view #buddypress{display:none !important;}

@media (max-width:420px){.ttp-hdr-in{padding:0 10px;gap:8px;}.ttp-logo{font-size:15px;}.ttp-nav{gap:0;}.ttp-nav a{padding:7px 8px;font-size:13.5px;}.ttp-nav a.ttp-cta{padding:7px 12px;}}


/* ===== TTP v3: profiel bewerken ===== */
body.ttp-edit #buddypress #object-nav,body.ttp-edit #buddypress h2.screen-heading{display:none !important;}
body.ttp-edit .ttp-cover{height:110px;}
body.ttp-edit .ttp-hero-body{padding-bottom:18px;}
body.ttp-edit .ttp-hero-actions a.ttp-btn-primary{display:none !important;}
body.ttp-edit main #buddypress{max-width:820px !important;}
body.ttp-edit main #ttp-prof{max-width:820px !important;}
body.ttp-edit #buddypress .bp-wrap{margin-top:0;}
body.ttp-edit #buddypress #subnav{margin:0 0 18px;}
.ttp-edit-head{margin:6px 0 20px;}
.ttp-edit-head h1{margin:0;font-size:30px;font-weight:800;color:#0c1430;letter-spacing:-.01em;}
.ttp-edit-head p{margin:6px 0 0;color:#5c657c;font-size:15.5px;line-height:1.55;max-width:620px;}
#profile-edit-form{padding-bottom:110px;}
.ttp-fcard{background:#fff;border:1px solid #e8ecf6;border-radius:18px;padding:26px 28px 22px;margin:0 0 18px;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);}
.ttp-fcard h2{margin:0;font-size:20px;font-weight:800;color:#0c1430;}
.ttp-fhint{margin:4px 0 20px;color:#5c657c;font-size:14.5px;}
.ttp-fgrid{display:grid;gap:20px 22px;}
.ttp-fgrid.two{grid-template-columns:1fr 1fr;}
.ttp-fgrid.one{grid-template-columns:1fr;}
#profile-edit-form .editfield{background:none !important;border:none !important;padding:0 !important;margin:0 !important;box-shadow:none !important;}
#profile-edit-form .editfield fieldset{border:none;padding:0;margin:0;min-width:0;}
#profile-edit-form .editfield legend{font-size:13px !important;font-weight:800 !important;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff !important;padding:0;margin:0 0 7px;float:none;width:auto;}
#profile-edit-form .bp-required-field-label{color:#8a93a8;font-weight:600;text-transform:none;letter-spacing:0;font-size:12.5px;}
#profile-edit-form input[type="text"],#profile-edit-form textarea,#profile-edit-form select{width:100%;box-sizing:border-box;border:1.5px solid #e1e7f5 !important;border-radius:12px !important;padding:13px 15px !important;font-size:16px;font-family:'Manrope',sans-serif;color:#0c1430;background:#fff !important;transition:border-color .15s,box-shadow .15s;}
#profile-edit-form textarea{resize:vertical;min-height:150px;line-height:1.6;}
#profile-edit-form input:focus,#profile-edit-form textarea:focus,#profile-edit-form select:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 4px rgba(47,91,255,.12) !important;}
#profile-edit-form input::placeholder,#profile-edit-form textarea::placeholder{color:#a3abbd;}
#profile-edit-form .editfield_4 .datebox-selects,#profile-edit-form .field_4 fieldset > div{display:flex;gap:10px;}
#profile-edit-form .field_4 select{flex:1;}
.ttp-counter{text-align:right;font-size:12.5px;color:#8a93a8;margin-top:6px;}
#profile-edit-form .field-visibility-settings-toggle{margin:8px 0 0;font-size:12.5px;color:#8a93a8;font-style:normal;}
#profile-edit-form .current-visibility-level{font-weight:700;color:#5c657c;}
#profile-edit-form .visibility-toggle-link{background:none;border:none;color:#2f5bff;font-weight:700;font-size:12.5px;cursor:pointer;padding:0 0 0 4px;font-family:inherit;text-decoration:underline;}
#profile-edit-form .field-visibility-settings{margin-top:8px;padding:12px 14px;background:#f5f8ff;border-radius:12px;font-size:13.5px;}
#profile-edit-form .field-visibility-settings legend{text-transform:none;letter-spacing:0;font-size:13px !important;color:#0c1430 !important;}
#profile-edit-form .field-visibility-settings label{display:block;padding:3px 0;}
#profile-edit-form .field-visibility-settings input[type="radio"]{width:auto;accent-color:#2f5bff;margin-right:6px;}
#profile-edit-form .submit{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:14px max(20px,calc((100vw - 820px) / 2));background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-top:1px solid #e1e7f5;margin:0;}
#profile-edit-form .ttp-savestate{margin-right:auto;font-size:14px;font-weight:600;color:#5c657c;display:flex;align-items:center;gap:8px;}
#profile-edit-form .ttp-savestate:before{content:"";width:9px;height:9px;border-radius:50%;background:#22c55e;}
#profile-edit-form .submit.is-dirty .ttp-savestate{color:#0c1430;}
#profile-edit-form .submit.is-dirty .ttp-savestate:before{background:#f59e0b;}
#profile-edit-form .ttp-cancel{color:#5c657c !important;font-weight:700;text-decoration:none;padding:11px 18px;border-radius:999px;font-size:15px;}
#profile-edit-form .ttp-cancel:hover{background:#eef3ff;color:#2f5bff !important;}
#profile-edit-form #profile-group-edit-submit{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:13px 30px !important;font-size:15.5px !important;font-weight:800 !important;cursor:pointer;box-shadow:0 12px 24px -10px rgba(47,91,255,.55);font-family:'Manrope',sans-serif;}
body.admin-bar #profile-edit-form .submit{bottom:0;}
body.ttp-edit #buddypress .bp-feedback.updated,body.ttp-edit #buddypress .bp-feedback.success{background:#ecfdf3;border-color:#b7ebcb;color:#0b6b3a;}
@media (max-width:700px){
  .ttp-fgrid.two{grid-template-columns:1fr;}
  .ttp-fcard{padding:20px 18px 16px;}
  #profile-edit-form .submit{padding:12px 14px;}
  #profile-edit-form .ttp-cancel{padding:10px 12px;}
  #profile-edit-form .ttp-savestate{font-size:12.5px;}
}

#profile-edit-form .editfield .description,#profile-edit-form .editfield p.description{display:none !important;}
.ttp-edit-head p{margin:6px 0 0 !important;}
#profile-edit-form .field-visibility-settings-toggle{font-family:'Manrope',sans-serif;}
#profile-edit-form .field-visibility-settings-toggle em{font-style:normal;}

#profile-edit-form .wp-editor-tools,#profile-edit-form .quicktags-toolbar,#profile-edit-form .mce-tinymce{display:none !important;}
#profile-edit-form .wp-editor-wrap,#profile-edit-form .wp-editor-container{border:none !important;background:none !important;padding:0 !important;}
#profile-edit-form textarea.wp-editor-area{display:block !important;visibility:visible !important;width:100% !important;height:auto !important;min-height:170px;}

#profile-edit-form .field_4 fieldset > div,#profile-edit-form .field_4 .datebox-selects{display:grid !important;grid-template-columns:.8fr 1.3fr 1fr;gap:10px;}
#profile-edit-form .field_4 label{display:none !important;}
#profile-edit-form .field_4 select{width:100%;min-width:0;}

@media (max-width:700px){
  body.logged-in .ttp-nav{position:fixed;left:0;right:0;bottom:0;z-index:80;background:rgba(12,20,48,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:6px 6px calc(6px + env(safe-area-inset-bottom));justify-content:space-around;gap:0;border-top:1px solid rgba(255,255,255,.08);}
  body.logged-in .ttp-nav a.ttp-in{flex:1;justify-content:center;font-size:12px;padding:10px 2px;border-radius:12px;}
  body.logged-in .ttp-nav a.ttp-hide-m{display:none !important;}
  body.logged-in{padding-bottom:66px;}
  body.logged-in #profile-edit-form .submit{bottom:64px;}
}


/* ===== TTP v3: meldingen + foto-uploadpagina's ===== */
#buddypress .bp-feedback{display:flex;align-items:flex-start;gap:0;font-style:normal;background:#eef3ff;border:1px solid #d5e0ff;border-radius:14px;padding:14px 18px;box-shadow:none;}
#buddypress .bp-feedback .bp-icon{display:none !important;}
#buddypress .bp-feedback p,#buddypress .bp-feedback span{font-style:normal !important;font-size:15px !important;line-height:1.55;margin:0;color:#26304f;}
body.ttp-edit-page #buddypress #object-nav,body.ttp-edit-page #buddypress h2.screen-heading,body.ttp-edit-page #buddypress .screen-heading{display:none !important;}
body.ttp-edit-page .ttp-cover{height:110px;}
body.ttp-edit-page .ttp-hero-body{padding-bottom:18px;}
body.ttp-edit-page .ttp-hero-actions{display:none;}
body.ttp-edit-page main #buddypress,body.ttp-edit-page main #ttp-prof{max-width:820px !important;}
body.ttp-prof #buddypress .bp-subnavs li a{font-size:15px !important;padding:9px 16px !important;}
body.ttp-prof #buddypress .bp-subnavs ul{gap:4px;}
body.ttp-edit-page #buddypress .bp-avatar-nav ul{border-bottom:1px solid #e1e7f5;margin:16px 0;}
body.ttp-edit-page #buddypress .bp-avatar-nav li a,body.ttp-edit-page #buddypress .bp-avatar-nav li{font-size:15px;font-weight:700;}
body.ttp-edit-page #buddypress .drag-drop-inside{background:#fff;border:2px dashed #b9c9f5;border-radius:18px;padding:44px 20px;text-align:center;}
body.ttp-edit-page #buddypress #drag-drop-area{border:none !important;background:none !important;}
body.ttp-edit-page #buddypress .drag-drop-info{font-size:17px;font-weight:700;color:#0c1430;margin:0 0 12px;}
body.ttp-edit-page #buddypress .drag-drop-buttons .button,body.ttp-edit-page #buddypress .bp-avatar-status .button,body.ttp-edit-page #buddypress .avatar-crop-management .button,body.ttp-edit-page #buddypress button.button,body.ttp-edit-page #buddypress input[type="submit"]{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:12px 26px !important;font-weight:800 !important;font-size:15px !important;cursor:pointer;font-family:'Manrope',sans-serif;box-shadow:0 12px 24px -10px rgba(47,91,255,.5);}
body.ttp-edit-page #buddypress .item-body > p,body.ttp-edit-page #buddypress .item-body h2{color:#0c1430;}
body.ttp-edit-page #buddypress .item-body{background:#fff;border:1px solid #e8ecf6;border-radius:18px;padding:24px 26px;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);}


/* ===== TTP v3: Berichten, Meldingen, Instellingen (plain pages) ===== */
body.ttp-prof-plain{background:#f3f6fb !important;}
body.ttp-prof-plain #buddypress #object-nav,body.ttp-prof-plain #buddypress h2.screen-heading,body.ttp-prof-plain #buddypress .screen-heading.message-title-hidden{display:none !important;}
body.ttp-prof-plain main #buddypress,body.ttp-prof-plain main .ttp-page-head{max-width:1040px !important;margin-left:auto !important;margin-right:auto !important;width:100%;}
.ttp-page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px !important;font-family:'Manrope',sans-serif;}
.ttp-page-head h1{margin:0;font-size:32px;font-weight:800;color:#0c1430;letter-spacing:-.01em;}
.ttp-page-head .ttp-btn{flex:none;padding:11px 24px;font-size:15px;}
body.ttp-prof-plain #buddypress .bp-wrap{background:#fff;border:1px solid #e8ecf6;border-radius:18px;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);padding:0;overflow:hidden;}
body.ttp-prof-plain #buddypress #item-body{padding:0;}
body.ttp-prof-plain #buddypress #subnav{margin:0;padding:10px 14px 0;border-bottom:1px solid #e8ecf6;}
body.ttp-prof-plain #buddypress #subnav ul{border-bottom:none !important;}
body.ttp-prof-plain #buddypress #subsubnav{padding:12px 18px;border-bottom:1px solid #e8ecf6;margin:0;}
body.ttp-prof-plain #buddypress .bp-messages-feedback{padding:18px;}
/* inbox: twee panelen */
body.messages:not(.compose) #buddypress .bp-messages-content{display:grid;grid-template-columns:360px 1fr;min-height:520px;}
body.messages #buddypress ul.message-lists{list-style:none;margin:0;padding:0;border-right:1px solid #e8ecf6;max-height:680px;overflow:auto;}
body.messages #buddypress .thread-item{display:grid;grid-template-columns:44px 1fr auto;grid-template-areas:"to to date" "content content content";gap:6px 10px;padding:16px 18px;border-bottom:1px solid #eef1f8;cursor:pointer;background:#fff;position:relative;}
body.messages #buddypress .thread-item:hover{background:#f7f9ff;}
body.messages #buddypress .thread-item.selected{background:#eef3ff;box-shadow:inset 3px 0 0 #2f5bff;}
body.messages #buddypress .thread-item .thread-cb{display:none;}
body.messages #buddypress .thread-item .thread-to{grid-area:to;grid-column:1 / 3;display:flex;align-items:center;gap:10px;font-weight:800;color:#0c1430;}
body.messages #buddypress .thread-item .thread-to img.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;}
body.messages #buddypress .thread-item .user-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:#0c1430;}
body.messages #buddypress .thread-item .num-recipients{display:none;}
body.messages #buddypress .thread-item .thread-date{grid-area:date;font-size:12.5px;color:#8a93a8;align-self:center;}
body.messages #buddypress .thread-item .thread-content{grid-area:content;}
body.messages #buddypress .thread-item .thread-subject{display:flex;gap:6px;align-items:baseline;font-weight:700;font-size:15px;}
body.messages #buddypress .thread-item .thread-subject a{color:#0c1430;text-decoration:none;}
body.messages #buddypress .thread-item .thread-count{color:#8a93a8;font-weight:600;font-size:13px;}
body.messages #buddypress .thread-item .excerpt{margin:4px 0 0;color:#5c657c;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
body.messages #buddypress .thread-item.unread:after{content:"";position:absolute;top:22px;right:18px;width:9px;height:9px;border-radius:50%;background:#2f5bff;}
body.messages #buddypress .thread-item.unread .thread-date{margin-right:16px;}
body.messages #buddypress #thread-preview{padding:24px 28px;}
body.messages #buddypress #thread-preview .message-title{font-size:22px;font-weight:800;color:#0c1430;margin:0 0 14px;}
body.messages #buddypress .preview-pane-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid #eef1f8;margin-bottom:18px;}
body.messages #buddypress .thread-participants{margin:0;display:flex;align-items:center;gap:10px;}
body.messages #buddypress .thread-participants dt{font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff;}
body.messages #buddypress .participants-list{list-style:none;margin:0;padding:0;display:flex;gap:6px;}
body.messages #buddypress .participants-list img.avatar{width:32px;height:32px;border-radius:50%;}
body.messages #buddypress .preview-message{background:#f5f8ff;border-radius:14px;padding:16px 18px;color:#26304f;font-size:15.5px;line-height:1.65;}
body.messages #buddypress .actions{display:flex;gap:8px;align-items:center;}
body.messages #buddypress .actions button,body.messages #buddypress .actions a{background:#f3f6fb !important;border:none !important;border-radius:999px;color:#5c657c !important;padding:8px 12px;}
/* gesprek */
body.messages #buddypress #bp-message-thread-list{list-style:none;margin:0;padding:0;}
body.messages #buddypress #bp-message-thread-list li{background:#fff;border:1px solid #eef1f8;border-radius:14px;padding:16px 18px;margin:0 0 12px;}
/* opstellen */
body.messages.compose #buddypress .bp-messages-content{padding:24px 28px 28px;}
body.messages.compose #buddypress label{display:block;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff;margin:0 0 7px;}
body.messages.compose #buddypress input[type="text"],body.messages.compose #buddypress input.send-to-input,body.messages.compose #buddypress #subject{width:100% !important;box-sizing:border-box;border:1.5px solid #e1e7f5 !important;border-radius:12px !important;padding:13px 15px !important;font-size:16px;background:#fff !important;margin-bottom:18px;}
body.messages.compose #buddypress #send-to-input{max-width:none;}
body.messages.compose #buddypress .wp-editor-container,body.messages.compose #buddypress #bp-message-content .wp-editor-wrap{border:1.5px solid #e1e7f5;border-radius:12px;overflow:hidden;}
body.messages.compose #buddypress .submit{display:flex;align-items:center;gap:14px;margin-top:18px;}
body.messages.compose #buddypress #bp-messages-send{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:13px 32px !important;font-weight:800 !important;font-size:15.5px !important;box-shadow:0 12px 24px -10px rgba(47,91,255,.55);cursor:pointer;}
body.messages.compose #buddypress #bp-messages-reset{background:none !important;border:none !important;color:#5c657c !important;font-weight:700;box-shadow:none !important;cursor:pointer;}
@media (max-width:820px){
  body.messages:not(.compose) #buddypress .bp-messages-content{grid-template-columns:1fr;}
  body.messages #buddypress ul.message-lists{border-right:none;border-bottom:1px solid #e8ecf6;max-height:340px;}
  body.messages #buddypress #thread-preview{padding:18px;}
  .ttp-page-head h1{font-size:26px;}
}

body.messages:not(.compose) #buddypress .bp-messages-content{display:block !important;min-height:0 !important;}
body.messages:not(.compose) #buddypress .bp-messages-content > div:has(> #message-threads){display:grid;grid-template-columns:360px 1fr;min-height:520px;}
body.messages #buddypress .preview-thread-title{font-size:0 !important;background:none !important;padding:0 !important;margin:0 0 14px !important;}
body.messages #buddypress .preview-thread-title .messages-title{font-size:22px;font-weight:800;color:#0c1430;background:none;padding:0;}
body.messages #buddypress .thread-item .user-name{font-size:15px;font-weight:800;}
body.messages #buddypress .thread-item .thread-to{font-size:15px;}
body.ttp-prof-plain #buddypress #subsubnav{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;}
body.ttp-prof-plain #buddypress #subsubnav .bp-search{max-width:300px;flex:1;}
body.ttp-prof-plain #buddypress #subsubnav form{display:flex;gap:8px;align-items:center;}
body.ttp-prof-plain #buddypress #subsubnav input[type="search"],body.ttp-prof-plain #buddypress #subsubnav input[type="text"]{min-width:0;width:100%;}
body.ttp-prof-plain #buddypress .bp-wrap{padding-top:0 !important;margin-top:0 !important;}
@media (max-width:820px){
  body.messages:not(.compose) #buddypress .bp-messages-content > div:has(> #message-threads){grid-template-columns:1fr;}
}

body.messages #buddypress .bp-messages-feedback{padding:0 !important;}
body.messages #buddypress .bp-messages-feedback:has(.bp-feedback[style*="display: none"]){display:none !important;}
body.ttp-prof-plain #buddypress .bp-wrap > nav.main-navs,body.ttp-prof-plain #buddypress .bp-wrap > .main-navs{display:none !important;}
body.messages:not(.compose) #buddypress .bp-messages-feedback:not(:empty) .bp-feedback:not([style*="display: none"]){margin:18px;}


/* ===== TTP v3: instellingen, opstellen, footer ===== */
body.messages.compose #buddypress #subsubnav{display:none !important;}
body.ttp-prof-plain:not(.messages) #buddypress #item-body{padding:0 28px 28px;}
body.ttp-prof-plain:not(.messages) #buddypress #item-body > #subnav{margin:0 -28px 22px;}
body.settings #buddypress #item-body h2,body.notifications #buddypress #item-body h2,body.friends #buddypress #item-body h2{font-size:19px;font-weight:800;color:#0c1430;margin:0 0 16px;}
body.settings #buddypress label{display:block;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff;margin:0 0 7px;}
body.settings #buddypress input[type="text"],body.settings #buddypress input[type="email"],body.settings #buddypress input[type="password"]{width:100%;box-sizing:border-box;margin-bottom:18px;}
body.settings #buddypress button.button,body.settings #buddypress .wp-generate-pw,body.settings #buddypress button.wp-generate-pw{background:#fff !important;color:#2f5bff !important;border:1.5px solid #cdd9ff !important;border-radius:999px !important;padding:10px 22px !important;font-weight:800 !important;font-size:14.5px !important;cursor:pointer;font-family:'Manrope',sans-serif;box-shadow:none !important;margin-bottom:18px;}
body.settings #buddypress input[type="submit"]{font-size:15px !important;padding:12px 30px !important;}
body.settings #buddypress table{width:100%;border-collapse:collapse;}
body.settings #buddypress table th,body.settings #buddypress table td{padding:12px 8px;border-bottom:1px solid #eef1f8;text-align:left;}
body.logged-in footer .wp-block-navigation-item:has(> a[href*="/login/"]),body.logged-in footer .wp-block-navigation-item:has(> a[href*="/register/"]){display:none !important;}

body.ttp-prof-plain #buddypress select{max-width:100%;box-sizing:border-box;}
body.notifications #buddypress .bp-notifications-filter,body.notifications #buddypress #subsubnav,body.notifications #buddypress .subnav-filters{flex-wrap:wrap;}


/* ===== TTP v3: gesprek-detail ===== */
body.messages #buddypress #subsubnav:has(+ .bp-messages-content #bp-message-thread-header){display:none;}
body.messages #buddypress #bp-message-thread-header{padding:24px 28px 0;background:none;}
body.messages #buddypress #bp-message-thread-header .message-title,body.messages #buddypress #bp-message-thread-header h2{background:none !important;font-size:24px !important;font-weight:800 !important;color:#0c1430 !important;padding:0 !important;margin:0 0 14px !important;border:none !important;}
body.messages #buddypress #bp-message-thread-header .participants-list{margin-top:0;}
body.messages #buddypress #bp-message-thread-list{padding:8px 28px 0 !important;margin:0;list-style:none;}
body.messages #buddypress #bp-message-thread-list li{background:#fff;border:1px solid #e8ecf6;border-radius:16px;padding:18px 20px;margin:0 0 14px;box-shadow:none;}
body.messages #buddypress #bp-message-thread-list .message-metadata{display:flex;align-items:center;gap:12px;background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 0 10px;}
body.messages #buddypress #bp-message-thread-list .message-metadata img.avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;}
body.messages #buddypress #bp-message-thread-list .message-metadata .user-link,body.messages #buddypress #bp-message-thread-list .message-metadata strong{font-weight:800;font-size:15.5px;color:#0c1430;text-decoration:none;}
body.messages #buddypress #bp-message-thread-list .activity{font-size:13px;color:#8a93a8;}
body.messages #buddypress #bp-message-thread-list .message-content{padding:0 !important;background:none !important;font-size:15.5px;line-height:1.65;color:#26304f;}
body.messages #buddypress #send-reply{padding:8px 28px 28px;}
body.messages #buddypress #send-reply .message-box{background:none;border:none;padding:0;}
body.messages #buddypress #send-reply h3,body.messages #buddypress #send-reply .message-box > h3{display:flex;align-items:center;gap:10px;font-size:17px !important;font-weight:800;color:#0c1430;margin:6px 0 12px !important;background:none !important;}
body.messages #buddypress #send-reply img.avatar{width:32px;height:32px;border-radius:50%;}
body.messages #buddypress #send-reply .wp-editor-container{border:1.5px solid #e1e7f5;border-radius:12px;overflow:hidden;}
body.messages #buddypress #send-reply .submit{margin-top:16px;display:flex;gap:12px;align-items:center;}
body.messages #buddypress #send-reply .submit input[type="submit"],body.messages #buddypress #send-reply #send_reply_button{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:12px 30px !important;font-weight:800 !important;font-size:15px !important;cursor:pointer;box-shadow:0 12px 24px -10px rgba(47,91,255,.55);}


/* ===== TTP v3: registratie ===== */
body.ttp-reg-page{background:#f3f6fb !important;}
body.ttp-reg-page .wp-block-post-title{display:none !important;}
body.ttp-reg-page main{margin-top:0 !important;}
body.ttp-reg-page main > .wp-block-group{padding:0 !important;}
body.ttp-reg-page main .is-layout-constrained > *{max-width:none !important;}
body.ttp-reg-page .ttp-nav a:not(.ttp-cta):not([href="/login/"]),body.ttp-reg-page .ttp-nav .ttp-cta{display:none !important;}
#ttp-reg{display:grid;grid-template-columns:minmax(300px,5fr) minmax(360px,6fr);min-height:calc(100vh - 140px);max-width:1240px;margin:0 auto;font-family:'Manrope',sans-serif;color:#0c1430;}
.ttp-reg-brand{background:radial-gradient(circle at 20% 15%,rgba(109,148,255,.5),transparent 50%),linear-gradient(150deg,#0c1430,#152052 60%,#2f5bff);color:#fff;display:flex;align-items:center;padding:56px 48px;}
.ttp-reg-brand-in{max-width:420px;}
.ttp-reg-kicker{display:inline-block;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9fbcff;margin-bottom:18px;}
.ttp-reg-brand h2{margin:0 0 28px;font-size:36px;line-height:1.15;font-weight:800;letter-spacing:-.015em;color:#fff;}
.ttp-reg-brand ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px;}
.ttp-reg-brand li{display:flex;gap:12px;align-items:flex-start;font-size:16.5px;line-height:1.45;color:#e6edff;}
.ttp-reg-brand li svg{flex-shrink:0;margin-top:2px;}
.ttp-reg-card{background:#fff;padding:48px 52px;display:flex;flex-direction:column;justify-content:center;}
.ttp-reg-head h1{margin:0;font-size:30px;font-weight:800;letter-spacing:-.01em;color:#0c1430;}
.ttp-reg-head p{margin:8px 0 26px;color:#5c657c;font-size:16px;line-height:1.5;}
.ttp-reg-done{text-align:center;}
.ttp-reg-done .ttp-mail{font-size:52px;line-height:1;margin-bottom:12px;}
.ttp-reg-small{font-size:14px !important;color:#8a93a8 !important;}
#ttp-reg #buddypress{max-width:none;padding:0;margin:0;}
#ttp-reg #register-page h2.bp-heading,#ttp-reg .ttp-hidden{display:none !important;}
.ttp-reg-fields{display:flex;flex-direction:column;gap:18px;}
#ttp-reg .editfield,#ttp-reg .ttp-f{margin:0 !important;padding:0 !important;background:none !important;border:none !important;}
#ttp-reg fieldset{border:none;padding:0;margin:0;min-width:0;}
#ttp-reg legend,#ttp-reg .ttp-f > label[for]{font-size:13px !important;font-weight:800 !important;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff !important;padding:0;margin:0 0 8px;display:block;float:none;}
#ttp-reg .bp-required-field-label{display:none;}
#ttp-reg input[type="text"],#ttp-reg input[type="email"],#ttp-reg input[type="password"]{width:100%;box-sizing:border-box;border:1.5px solid #dfe6f5 !important;border-radius:12px !important;padding:14px 16px !important;font-size:16px;font-family:inherit;color:#0c1430;background:#fff !important;transition:border-color .15s,box-shadow .15s;}
#ttp-reg input:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 4px rgba(47,91,255,.13) !important;}
#ttp-reg .field-visibility-settings-header,#ttp-reg .field-visibility-settings,#ttp-reg .field-visibility-settings-notoggle{display:none !important;}
#ttp-reg .radio-button-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#ttp-reg .radio-button-options label.option-label{display:flex;align-items:center;gap:10px;border:1.5px solid #dfe6f5;border-radius:12px;padding:14px 16px;font-size:15.5px;font-weight:700;cursor:pointer;background:#fff;text-transform:none;letter-spacing:0;color:#0c1430 !important;margin:0;transition:border-color .15s,background .15s;}
#ttp-reg .radio-button-options label.option-label:hover{border-color:#9fb6ff;}
#ttp-reg .radio-button-options label.option-label:has(input:checked){border-color:#2f5bff;background:#eef3ff;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
#ttp-reg .radio-button-options input{accent-color:#2f5bff;width:18px;height:18px;margin:0;}
#ttp-reg .radio-button-options label.option-label:last-child{grid-column:1 / -1;}
#ttp-reg .checkbox-options label.option-label{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:#3b4560 !important;text-transform:none;letter-spacing:0;font-weight:500;cursor:pointer;}
#ttp-reg .checkbox-options input{accent-color:#2f5bff;width:19px;height:19px;margin:2px 0 0;flex-shrink:0;}
#ttp-reg .checkbox-options a{color:#2f5bff;font-weight:700;}
#ttp-reg .password-input-wrapper{position:relative;display:block;}
#ttp-reg .wp-pwd{position:relative;}
#ttp-reg button.wp-hide-pw{position:absolute;right:6px;top:6px;background:none !important;border:none !important;box-shadow:none !important;padding:8px 10px !important;color:#5c657c !important;cursor:pointer;}
#ttp-reg #pass-strength-result{margin-top:10px;font-size:13px;font-weight:700;padding:6px 12px;border-radius:999px;background:#f0f3fa;color:#5c657c;display:inline-block;}
#ttp-reg #pass-strength-result.short,#ttp-reg #pass-strength-result.bad{background:#fdecec;color:#b42318;}
#ttp-reg #pass-strength-result.good{background:#fff5e0;color:#a15c07;}
#ttp-reg #pass-strength-result.strong{background:#e7f8ee;color:#0b6b3a;}
#ttp-reg .pw-weak{margin-top:10px;font-size:14px;color:#5c657c;}
#ttp-reg .pw-weak label{text-transform:none;letter-spacing:0;font-weight:600;color:#5c657c !important;display:flex;gap:8px;align-items:center;}
.ttp-pw-hint{margin:10px 0 0 !important;font-size:13.5px;color:#8a93a8;line-height:1.5;}
#ttp-reg .error,#ttp-reg .bp-messages.error,#ttp-reg .bp-feedback.error{background:#fdecec;border:1px solid #f4c2c2;color:#b42318;border-radius:10px;padding:10px 14px;font-size:14px;margin:0 0 8px;}
#ttp-reg .submit{margin:26px 0 0;}
#ttp-reg #submit{width:100%;background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:none !important;border-radius:999px !important;padding:16px 24px !important;font-size:17px !important;font-weight:800 !important;cursor:pointer;box-shadow:0 16px 30px -12px rgba(47,91,255,.6);font-family:inherit;transition:transform .15s,box-shadow .15s;}
#ttp-reg #submit:hover{transform:translateY(-1px);box-shadow:0 20px 34px -12px rgba(47,91,255,.7);}
.ttp-reg-foot{margin:20px 0 0;text-align:center;color:#5c657c;font-size:15px;}
.ttp-reg-foot a{color:#2f5bff;font-weight:800;text-decoration:none;}
.ttp-reg-btn{display:inline-flex;justify-content:center;margin-top:18px;padding:14px 26px;border-radius:999px;font-weight:800;text-decoration:none;}
.ttp-reg-btn-ghost{background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff !important;}
@media (max-width:900px){
  #ttp-reg{grid-template-columns:1fr;min-height:0;}
  .ttp-reg-brand{padding:28px 22px;}
  .ttp-reg-brand h2{font-size:24px;margin-bottom:0;}
  .ttp-reg-brand ul,.ttp-reg-kicker{display:none;}
  .ttp-reg-card{padding:28px 20px 40px;}
  .ttp-reg-head h1{font-size:25px;}
}

body.ttp-reg-page .entry-content.alignfull,body.ttp-reg-page main .alignfull{margin-left:0 !important;margin-right:0 !important;max-width:100% !important;}
body.ttp-reg-page{overflow-x:hidden;}

/* ===== TTP v4: rol + positie ===== */
.caps-warning,.caps-icon,#caps-warning,.wp-pwd .caps-icon,.wp-pwd .caps-warning{display:none !important;}
#ttp-reg .radio-button-options label.option-label:last-child{grid-column:auto;}
#ttp-reg .radio-button-options label.option-label:last-child:nth-child(odd){grid-column:1 / -1;}
#ttp-reg .editfield.ttp-pos{display:none;}
#ttp-reg .editfield.ttp-pos.is-open{display:block;background:#f6f8ff !important;border:1.5px solid #e1e8fb !important;border-radius:16px;padding:16px 16px 12px !important;animation:ttpPosIn .25s ease-out;}
#ttp-reg .ttp-pos .radio-button-options{grid-template-columns:1fr 1fr;}
#ttp-reg .ttp-pos .radio-button-options label.option-label{padding:12px 14px;font-size:15px;}
@keyframes ttpPosIn{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:none;}}
.ttp-later{background:none;border:none;padding:10px 0 0;color:#5c657c;font-size:13.5px;font-weight:700;cursor:pointer;text-decoration:underline;font-family:inherit;}
.ttp-later:hover{color:#2f5bff;}
.ttp-b-scout{background:linear-gradient(135deg,#0b6b3a,#2fb36b);}
.ttp-badge-inline.ttp-b-scout{background:linear-gradient(135deg,#0b6b3a,#2fb36b);}
.ttp-badge-inline.ttp-b-pos{background:#eef3ff;color:#2f5bff;border:1.5px solid #cfdcff;}
.ttp-hero-name{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;}
.ttp-row-pos{color:#0c1430;font-size:14.5px;}
.ttp-row-pos strong{font-weight:800;}
body.ttp-edit .ttp-fgrid .editfield.ttp-span{grid-column:1 / -1;}
body.ttp-edit .ttp-fgrid .radio-button-options{display:flex;flex-wrap:wrap;gap:10px;}
body.ttp-edit .ttp-fgrid .radio-button-options label.option-label{display:inline-flex;align-items:center;gap:8px;border:1.5px solid #dfe6f5;border-radius:999px;padding:10px 18px;font-size:14.5px;font-weight:700;cursor:pointer;background:#fff;color:#0c1430;margin:0;transition:border-color .15s,background .15s;}
body.ttp-edit .ttp-fgrid .radio-button-options label.option-label:hover{border-color:#9fb6ff;}
body.ttp-edit .ttp-fgrid .radio-button-options label.option-label:has(input:checked){border-color:#2f5bff;background:#eef3ff;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
body.ttp-edit .ttp-fgrid .radio-button-options input{accent-color:#2f5bff;width:17px;height:17px;margin:0;}
body.ttp-edit .ttp-fgrid .editfield.field_28 .bp-radio-clear,body.ttp-edit .ttp-fgrid .editfield.field_8 .bp-radio-clear{display:none;}
body.bp-user a[href*="/profile/edit/group/2"]{display:none !important;}

/* ===== TTP v5: Mijn profiel ===== */
body.ttp-edit .ttp-cover,body.ttp-edit-page .ttp-cover{display:none;}
body.ttp-edit .ttp-hero,body.ttp-edit-page .ttp-hero{border-radius:16px;margin-bottom:14px;}
body.ttp-edit .ttp-hero-body,body.ttp-edit-page .ttp-hero-body{padding:16px 22px;align-items:center;flex-wrap:nowrap;gap:16px;}
body.ttp-edit .ttp-avatar,body.ttp-edit-page .ttp-avatar{width:64px;height:64px;margin-top:0;border-width:3px;box-shadow:none;}
body.ttp-edit .ttp-avatar span,body.ttp-edit-page .ttp-avatar span{font-size:22px;}
body.ttp-edit .ttp-hero-main,body.ttp-edit-page .ttp-hero-main{padding-top:0;min-width:0;}
body.ttp-edit .ttp-hero-name,body.ttp-edit-page .ttp-hero-name{font-size:19px;gap:6px 8px;}
body.ttp-edit .ttp-badge-inline,body.ttp-edit-page .ttp-badge-inline{font-size:11.5px;padding:3px 10px;}
body.ttp-edit .ttp-subline,body.ttp-edit-page .ttp-subline{display:none;}
body.ttp-edit .ttp-headline,body.ttp-edit-page .ttp-headline{margin:2px 0 0;font-size:14px;}
body.ttp-edit .ttp-hero-actions,body.ttp-edit-page .ttp-hero-actions{display:none !important;}
body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav{background:none;border:none;margin:0 0 18px;padding:0;}
body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav ul{display:inline-flex;gap:4px;background:#fff;border:1px solid #e1e7f5 !important;border-radius:999px;padding:4px;max-width:100%;overflow-x:auto;margin:0;}
body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav li a{border-radius:999px !important;padding:9px 20px !important;font-size:14.5px !important;font-weight:700;color:#5c657c;white-space:nowrap;}
body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav li a:hover{background:#eef3ff;color:#2f5bff;}
body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav li.selected a,body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav li.current a{background:#0c1430 !important;color:#fff !important;}
#buddypress #subnav li:has(> a[href*="change-cover-image"]){display:none !important;}
body.ttp-edit .field-visibility-settings-toggle,body.ttp-edit .field-visibility-settings,body.ttp-edit .field-visibility-settings-notoggle{display:none !important;}


/* ===== TTP v5b ===== */
#buddypress .secondary-nav-more{display:none !important;}
body.ttp-edit .editfield.field_7 legend{display:none;}
a.clear-value{display:inline-block;margin-top:10px;font-size:0;color:#5c657c;text-decoration:none;cursor:pointer;}
a.clear-value::after{content:"Keuze wissen";font-size:13.5px;font-weight:700;text-decoration:underline;}
a.clear-value:hover{color:#2f5bff;}
#ttp-reg a.clear-value{display:none !important;}


/* ===== TTP v6: registratie mobiel ===== */
body.ttp-reg-page main.has-global-padding,body.ttp-reg-page main .entry-content,body.ttp-reg-page main .wp-block-post-content{padding-left:0 !important;padding-right:0 !important;}
#ttp-reg{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);}
.ttp-reg-card,.ttp-reg-brand{min-width:0;}
#ttp-reg #register-page .bp-feedback.info{display:none !important;}
#ttp-reg .radio-button-options input{flex-shrink:0;}
@media (max-width:900px){
  #ttp-reg{grid-template-columns:minmax(0,1fr);}
  #ttp-reg .radio-button-options label.option-label{padding:12px 12px;font-size:14.5px;gap:8px;}
}


/* ===== TTP v6b ===== */
#ttp-reg .ttp-pos .radio-button-options{width:100%;box-sizing:border-box;margin:0;padding:0;}
#ttp-reg .ttp-pos .radio-button-options label.option-label,#ttp-reg .radio-button-options label.option-label{min-width:0;box-sizing:border-box;}
#ttp-reg .ttp-pos fieldset{width:100%;box-sizing:border-box;}
#ttp-reg button.ttp-later{background:none !important;border:none !important;box-shadow:none !important;padding:12px 0 2px !important;color:#5c657c !important;font-size:13.5px !important;font-weight:700 !important;text-decoration:underline;cursor:pointer;font-family:inherit;border-radius:0 !important;}
#ttp-reg button.ttp-later:hover{color:#2f5bff !important;}


/* ===== TTP v6c ===== */
#ttp-reg .wp-pwd,#ttp-reg .password-input-wrapper,#ttp-reg .user-pass1-wrap,#ttp-reg .ttp-f{width:100%;box-sizing:border-box;}
#ttp-reg input#pass1{width:100% !important;min-width:0;padding-right:52px !important;}
#ttp-reg:not(.pw-typed) #pass-strength-result{display:none !important;}
@media (max-width:480px){
  #ttp-reg .radio-button-options label.option-label{padding:12px 10px;font-size:13.5px;gap:7px;}
  #ttp-reg .radio-button-options input{width:17px;height:17px;}
}


/* ===== TTP v7: mobiele marges ===== */
@media (max-width:600px){
  body.ttp-prof main .entry-content,body.ttp-dir-active main .entry-content{padding-left:14px !important;padding-right:14px !important;}
  body.ttp-prof .ttp-hero-body{gap:14px;}
}


/* ===== TTP v8: kleinere ledenkaarten + zichtbaarheid weg ===== */
.ttp-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;}
.ttp-card-photo{aspect-ratio:1/1;}
.ttp-noimg span{font-size:42px;}
.ttp-badge{top:10px;left:10px;padding:4px 10px;font-size:11.5px;}
.ttp-card-body{padding:12px 14px 14px;gap:6px;}
.ttp-card-name{font-size:15.5px;}
.ttp-card .ttp-row{font-size:13px;}
.ttp-card-actions{gap:6px;padding-top:8px;}
.ttp-card-actions .ttp-btn{padding:8px 10px;font-size:13px;}
@media (max-width:900px){.ttp-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}}
@media (max-width:420px){.ttp-card-actions .ttp-btn{padding:8px 6px;font-size:12.5px;}}
#profile-edit-form .field-visibility-settings,#profile-edit-form .field-visibility-settings-toggle,#profile-edit-form .field-visibility-settings-notoggle,#profile-edit-form .field-visibility-settings-header,#profile-edit-form fieldset.field-visibility-settings,#profile-edit-form .visibility-toggle-link,#profile-edit-form .field-visibility-settings-close{display:none !important;}

/* ===== TTP v9: chat ===== */
body.ttp-chat-on #buddypress,body.ttp-chat-on .ttp-page-head{display:none !important;}
body.ttp-chat-on main #ttp-chat{max-width:1100px !important;margin-left:auto !important;margin-right:auto !important;width:100%;}
.ttp-chat{display:grid;grid-template-columns:340px minmax(0,1fr);background:#fff;border:1px solid #e8ecf6;border-radius:18px;box-shadow:0 12px 32px -20px rgba(12,20,48,.35);height:calc(100vh - 210px);min-height:540px;overflow:hidden;font-family:'Manrope',sans-serif;color:#0c1430;}
.ttp-chat button{font-family:inherit;}
.ttp-ch-side{display:flex;flex-direction:column;border-right:1px solid #e8ecf6;min-width:0;min-height:0;}
.ttp-ch-side-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 8px;}
.ttp-ch-side-head h1{margin:0;font-size:22px;font-weight:800;letter-spacing:-.01em;color:#0c1430;}
.ttp-ch-plus{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff !important;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;text-decoration:none !important;font-weight:600;box-shadow:0 8px 18px -8px rgba(47,91,255,.6);}
.ttp-ch-search{padding:6px 18px 12px;}
.ttp-ch-search input{width:100%;box-sizing:border-box;border:1.5px solid #e3e9f7;border-radius:999px;padding:10px 16px;font-size:14.5px;font-family:inherit;background:#f7f9ff;color:#0c1430;}
.ttp-ch-search input:focus{outline:none;border-color:#2f5bff;background:#fff;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
.ttp-ch-list{flex:1;overflow-y:auto;min-height:0;}
.ttp-ch-loading,.ttp-ch-none{padding:24px 20px;color:#5c657c;font-size:14.5px;line-height:1.6;text-align:center;}
.ttp-ch-none a{color:#2f5bff;font-weight:800;}
.ttp-chat button.ttp-ch-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 18px;background:none;border:none;border-left:3px solid transparent;text-align:left;cursor:pointer;color:#0c1430;border-radius:0;transition:background .12s;}
.ttp-chat button.ttp-ch-item:hover{background:#f6f8ff;}
.ttp-chat button.ttp-ch-item.is-active{background:#eef3ff;border-left-color:#2f5bff;}
.ttp-ch-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.ttp-ch-item-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline;}
.ttp-ch-item-name{font-size:15px;font-weight:700;color:#0c1430;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ttp-ch-item-time{font-size:12px;color:#8a93a8;flex-shrink:0;}
.ttp-ch-item-last{font-size:13.5px;color:#5c657c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ttp-ch-item.is-unread .ttp-ch-item-name{font-weight:800;}
.ttp-ch-item.is-unread .ttp-ch-item-last{color:#0c1430;font-weight:700;}
.ttp-ch-item.is-unread .ttp-ch-item-time{color:#2f5bff;font-weight:700;}
.ttp-ch-dot{width:10px;height:10px;border-radius:50%;background:#2f5bff;flex-shrink:0;}
.ttp-ch-av{display:inline-flex;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(150deg,#152052,#2f5bff);align-items:center;justify-content:center;}
.ttp-ch-av img{width:100%;height:100%;object-fit:cover;display:block;}
.ttp-ch-av b{color:#fff;font-weight:800;letter-spacing:.02em;}
.ttp-ch-av-md{width:46px;height:46px;}
.ttp-ch-av-md b{font-size:16px;}
.ttp-ch-av-sm{width:40px;height:40px;}
.ttp-ch-av-sm b{font-size:14px;}
.ttp-ch-main{display:flex;flex-direction:column;min-width:0;min-height:0;background:#fff;}
.ttp-ch-head{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid #e8ecf6;}
.ttp-ch-head-t{display:flex;flex-direction:column;min-width:0;}
.ttp-ch-head-t a,.ttp-ch-head-t{font-size:16px;font-weight:800;color:#0c1430;text-decoration:none;}
.ttp-ch-head-t span{font-size:12.5px;font-weight:500;color:#8a93a8;}
.ttp-chat button.ttp-ch-back{display:none;background:none;border:none;font-size:22px;color:#0c1430;cursor:pointer;padding:4px 8px 4px 0;line-height:1;}
.ttp-ch-scroll{flex:1;overflow-y:auto;min-height:0;padding:18px 22px 8px;background:#fbfcff;display:flex;flex-direction:column;}
.ttp-ch-day{text-align:center;margin:14px 0 10px;}
.ttp-ch-day span{display:inline-block;font-size:12px;font-weight:700;color:#5c657c;background:#eef1f8;border-radius:999px;padding:4px 12px;}
.ttp-ch-row{display:flex;flex-direction:column;margin-top:3px;}
.ttp-ch-row.is-me{align-items:flex-end;}
.ttp-ch-row.is-them{align-items:flex-start;}
.ttp-ch-row.is-end{margin-bottom:10px;}
.ttp-ch-bubble{max-width:72%;padding:10px 15px;font-size:15px;line-height:1.5;word-break:break-word;overflow-wrap:anywhere;border-radius:18px;}
.ttp-ch-row.is-me .ttp-ch-bubble{background:linear-gradient(135deg,#2f5bff,#5b84ff);color:#fff;border-bottom-right-radius:5px;}
.ttp-ch-row.is-them .ttp-ch-bubble{background:#eaf0ff;color:#0c1430;border-bottom-left-radius:5px;}
.ttp-ch-stamp{font-size:11.5px;color:#8a93a8;margin-top:3px;padding:0 4px;}
.ttp-ch-first{margin:auto;text-align:center;display:flex;flex-direction:column;gap:6px;padding:20px;color:#5c657c;}
.ttp-ch-first b{font-size:18px;color:#0c1430;font-weight:800;}
.ttp-ch-error{margin:10px auto;background:#fdecec;border:1px solid #f4c2c2;color:#b42318;border-radius:10px;padding:8px 14px;font-size:14px;}
.ttp-ch-comp{display:flex;align-items:flex-end;gap:10px;padding:12px 16px;border-top:1px solid #e8ecf6;background:#fff;}
.ttp-ch-comp textarea{flex:1;min-width:0;resize:none;border:1.5px solid #dfe6f5;border-radius:22px;padding:11px 18px;font-size:15px;line-height:1.4;font-family:inherit;color:#0c1430;background:#f7f9ff;max-height:140px;box-sizing:border-box;}
.ttp-ch-comp textarea:focus{outline:none;border-color:#2f5bff;background:#fff;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
.ttp-chat button.ttp-ch-send{width:44px;height:44px;border-radius:50%;border:none;background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;box-shadow:0 10px 20px -10px rgba(47,91,255,.7);padding:0;}
.ttp-chat button.ttp-ch-send:disabled{opacity:.4;cursor:default;box-shadow:none;}
.ttp-ch-empty{margin:auto;text-align:center;padding:30px;display:flex;flex-direction:column;align-items:center;gap:8px;max-width:360px;}
.ttp-ch-empty-ic{width:72px;height:72px;border-radius:50%;background:#eef3ff;color:#2f5bff;display:flex;align-items:center;justify-content:center;margin-bottom:6px;}
.ttp-ch-empty h2{margin:0;font-size:22px;font-weight:800;color:#0c1430;}
.ttp-ch-empty p{margin:0 0 10px;color:#5c657c;font-size:15px;line-height:1.55;}
@media (max-width:900px){
  .ttp-chat{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 190px);min-height:440px;border-radius:14px;}
  .ttp-chat:not(.show-thread) .ttp-ch-main{display:none;}
  .ttp-chat.show-thread .ttp-ch-side{display:none;}
  .ttp-chat button.ttp-ch-back{display:inline-flex;}
  .ttp-ch-bubble{max-width:82%;}
  .ttp-ch-head{padding:12px 14px;}
  .ttp-ch-scroll{padding:14px 14px 6px;}
}


/* ===== TTP v10: keuzelijst ===== */
select.ttp-sel{display:block;width:100%;box-sizing:border-box;appearance:none;-webkit-appearance:none;border:1.5px solid #dfe6f5 !important;border-radius:12px !important;padding:14px 44px 14px 16px !important;font-size:16px;font-family:inherit;font-weight:600;color:#0c1430;background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%232f5bff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat right 16px center !important;cursor:pointer;max-width:100%;}
select.ttp-sel:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 4px rgba(47,91,255,.13);}
#ttp-reg button.ttp-later{display:none !important;}
#ttp-reg .editfield.ttp-pos.is-open{background:none !important;border:none !important;padding:0 !important;}
body.ttp-edit .editfield.field_8 a.clear-value,body.ttp-edit .editfield.field_28 a.clear-value{display:none !important;}


/* ===== TTP v11: chat details ===== */
.ttp-ch-comp textarea{overflow-y:auto;scrollbar-width:none;}
.ttp-ch-comp textarea::-webkit-scrollbar{display:none;}


/* ===== TTP v12: zichtbaarheid definitief weg ===== */
body #profile-edit-form div[id^="field-visibility-settings"],body #profile-edit-form .editfield .field-visibility-settings,body #profile-edit-form .editfield .field-visibility-settings-notoggle,body #profile-edit-form .editfield .field-visibility-settings-toggle,body #profile-edit-form .editfield .field-visibility-settings-header{display:none !important;visibility:hidden !important;height:0 !important;margin:0 !important;padding:0 !important;overflow:hidden !important;}


/* ===== TTP v13: instellingen ===== */
body.ttp-set #buddypress #subnav{border-bottom:none !important;padding:20px 0 6px !important;margin:0 !important;}
body.ttp-set #buddypress #subnav ul{display:inline-flex;gap:4px;background:#f3f6fb;border:none !important;border-radius:999px;padding:4px;max-width:100%;overflow-x:auto;margin:0;}
body.ttp-set #buddypress #subnav li a{border-radius:999px !important;padding:9px 18px !important;font-size:14.5px !important;font-weight:700;color:#5c657c;white-space:nowrap;}
body.ttp-set #buddypress #subnav li a:hover{background:#e6edff;color:#2f5bff;}
body.ttp-set #buddypress #subnav li.selected a,body.ttp-set #buddypress #subnav li.current a{background:#0c1430 !important;color:#fff !important;}
body.ttp-set #buddypress #subnav li:has(> a[href*="/settings/invites"]),body.ttp-set #buddypress #subnav li:has(> a[href*="/settings/profile"]){display:none !important;}
body.ttp-set #buddypress .secondary-nav-more{display:none !important;}
body.ttp-set .ttp-set-head{margin:18px 0 22px;}
body.ttp-set .ttp-set-head h2{margin:0;font-size:22px;font-weight:800;color:#0c1430;letter-spacing:-.01em;}
body.ttp-set .ttp-set-head p{margin:6px 0 0;color:#5c657c;font-size:15px;line-height:1.55;}
body.ttp-set #buddypress form#settings-form{max-width:640px;}
body.ttp-set #buddypress form#settings-form label,body.ttp-set .ttp-set-pwlab{display:block;font-size:13px !important;font-weight:800 !important;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff !important;margin:0 0 8px;}
body.ttp-set #buddypress form#settings-form input[type="email"]{width:100%;box-sizing:border-box;font-size:16px;}
body.ttp-set #buddypress form#settings-form .ttp-set-pwlab{margin-top:22px;}
body.ttp-set #buddypress form#settings-form .submit{margin-top:26px;}
body.ttp-set #buddypress form#settings-form .wp-generate-pw{background:#fff !important;color:#2f5bff !important;border:1.5px solid #cfdcff !important;border-radius:999px !important;padding:11px 22px !important;font-weight:800 !important;box-shadow:none !important;cursor:pointer;}
body.ttp-set #buddypress form#settings-form .wp-generate-pw:hover{background:#eef3ff !important;}
.ttp-sw-list{display:flex;flex-direction:column;border:1px solid #e8ecf6;border-radius:14px;overflow:hidden;margin-bottom:8px;}
.ttp-sw-row{display:flex !important;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;cursor:pointer;background:#fff;margin:0 !important;text-transform:none !important;letter-spacing:0 !important;}
.ttp-sw-row + .ttp-sw-row{border-top:1px solid #e8ecf6;}
.ttp-sw-t{display:flex;flex-direction:column;gap:3px;min-width:0;}
.ttp-sw-t b{font-size:15.5px;font-weight:800;color:#0c1430;text-transform:none;letter-spacing:0;}
.ttp-sw-t span{font-size:13.5px;font-weight:500;color:#5c657c;text-transform:none;letter-spacing:0;}
.ttp-sw{position:relative;width:46px;height:26px;flex-shrink:0;display:block;}
.ttp-sw input{position:absolute;opacity:0;inset:0;width:100% !important;height:100%;margin:0;cursor:pointer;}
.ttp-sw i{position:absolute;inset:0;background:#cfd6e6;border-radius:999px;transition:background .15s;}
.ttp-sw i::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 5px rgba(12,20,48,.3);transition:transform .15s;}
.ttp-sw input:checked + i{background:linear-gradient(135deg,#2f5bff,#6d94ff);}
.ttp-sw input:checked + i::after{transform:translateX(20px);}
.ttp-sw input:focus-visible + i{box-shadow:0 0 0 3px rgba(47,91,255,.25);}
body.ttp-set #item-body ul{columns:2;column-gap:28px;padding-left:18px;font-size:14.5px;color:#3b4560;margin:0 0 20px;line-height:1.8;}
@media (max-width:600px){body.ttp-set #item-body ul{columns:1;}}


/* ===== TTP v13b ===== */
body.ttp-set table.notification-settings{display:none !important;}
body.ttp-set #buddypress .notification-settings + *,body.ttp-set #buddypress form#settings-form .submit{margin-top:22px;}


/* ===== TTP v13c: account-formulier ===== */
body.ttp-set #buddypress form#your-profile{max-width:640px;}
body.ttp-set #buddypress form#your-profile label,body.ttp-set #buddypress form#your-profile .ttp-set-pwlab{display:block;font-size:13px !important;font-weight:800 !important;letter-spacing:.04em;text-transform:uppercase;color:#2f5bff !important;margin:0 0 8px;}
body.ttp-set #buddypress form#your-profile input[type="email"]{width:100%;box-sizing:border-box;font-size:16px;}
body.ttp-set #buddypress form#your-profile .ttp-set-pwlab{margin-top:22px;}
body.ttp-set #buddypress form#your-profile .submit{margin-top:26px;}
body.ttp-set #buddypress form#your-profile .wp-generate-pw{background:#fff !important;color:#2f5bff !important;border:1.5px solid #cfdcff !important;border-radius:999px !important;padding:11px 22px !important;font-weight:800 !important;box-shadow:none !important;cursor:pointer;}
body.ttp-set #buddypress form#your-profile .wp-generate-pw:hover{background:#eef3ff !important;}
body.ttp-set #buddypress form#your-profile .pw-weak label{text-transform:none;letter-spacing:0;font-weight:600 !important;color:#5c657c !important;}


/* ===== TTP v13d: eigen tabbalk instellingen ===== */
body.ttp-set #buddypress #subnav{display:none !important;}
.ttp-set-tabs{display:inline-flex;gap:4px;background:#f3f6fb;border-radius:999px;padding:4px;margin:20px 0 4px;max-width:100%;}
.ttp-set-tabs a{padding:9px 20px;border-radius:999px;font-size:14.5px;font-weight:700;color:#5c657c !important;text-decoration:none !important;white-space:nowrap;}
.ttp-set-tabs a:hover{background:#e6edff;color:#2f5bff !important;}
.ttp-set-tabs a.is-on{background:#0c1430;color:#fff !important;}


/* ===== TTP v14: keuzelijsten overal gelijk ===== */
body #buddypress select.ttp-sel,body.ttp-edit #buddypress .editfield select.ttp-sel,body #ttp-reg select.ttp-sel{display:block !important;width:100% !important;box-sizing:border-box !important;appearance:none !important;-webkit-appearance:none !important;border:1.5px solid #dfe6f5 !important;border-radius:12px !important;padding:14px 44px 14px 16px !important;font-size:16px !important;font-family:inherit !important;font-weight:600 !important;color:#0c1430 !important;background-color:#fff !important;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%232f5bff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;background-repeat:no-repeat !important;background-position:right 16px center !important;background-size:12px 8px !important;cursor:pointer;height:auto !important;}
body #buddypress select.ttp-sel:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 4px rgba(47,91,255,.13) !important;}


/* ===== TTP v15: icoon-navigatie, badges, mobiele opslaanbalk ===== */
.ttp-nav .ttp-ic{display:none;}
.ttp-nav a{position:relative;}
.ttp-bd{position:absolute;top:0;right:0;min-width:18px;height:18px;padding:0 5px;box-sizing:border-box;border-radius:9px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:800;font-style:normal;display:flex;align-items:center;justify-content:center;line-height:1;border:2px solid #0c1430;}
.ttp-set-logout{display:none;}
@media (max-width:760px){
  body.logged-in .ttp-nav a.ttp-in{display:flex !important;align-items:center;justify-content:center;flex:1;height:48px;padding:0 !important;border-radius:12px;color:#8fa0d6 !important;background:none !important;}
  body.logged-in .ttp-nav a.ttp-in.on{color:#fff !important;}
  body.logged-in .ttp-nav a.ttp-in.on::before{content:"";position:absolute;top:-6px;left:28%;right:28%;height:3px;border-radius:0 0 3px 3px;background:#6d94ff;}
  body.logged-in .ttp-nav a.ttp-logout{display:none !important;}
  .ttp-nav .ttp-ic{display:block;width:26px;height:26px;}
  .ttp-nav a.ttp-in .ttp-lb{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
  .ttp-bd{top:5px;right:auto;left:calc(50% + 4px);}
  body.logged-in #profile-edit-form .submit{bottom:calc(60px + env(safe-area-inset-bottom));padding:10px 14px;justify-content:center;background:rgba(255,255,255,.96);border-top:1px solid #e8ecf6;}
  body.logged-in #profile-edit-form .ttp-savestate,body.logged-in #profile-edit-form .ttp-cancel{display:none !important;}
  body.logged-in #profile-edit-form .submit input[type="submit"]{width:100% !important;}
  .ttp-set-logout{display:block;margin:28px 0 4px;text-align:center;color:#b42318 !important;font-weight:800;text-decoration:none !important;padding:12px;border-radius:999px;border:1.5px solid #f4c2c2;}
}


/* ===== TTP v16: chat schermvullend op mobiel ===== */
@media (max-width:900px){
  body.ttp-chat-on{overflow:hidden;}
  body.ttp-chat-on .ttp-chat{position:fixed !important;left:0;right:0;top:64px;bottom:calc(61px + env(safe-area-inset-bottom));height:auto !important;min-height:0 !important;border-radius:0;border-left:none;border-right:none;box-shadow:none;z-index:40;max-width:none !important;width:auto !important;margin:0 !important;}
  body.admin-bar.ttp-chat-on .ttp-chat{top:110px;}
}
@media (max-width:900px) and (min-width:783px){
  body.admin-bar.ttp-chat-on .ttp-chat{top:96px;}
}


/* ===== TTP v17: nieuw bericht kiezen, eigen kaart ===== */
.ttp-chat button.ttp-ch-plus{border:none;cursor:pointer;padding:0;}
.ttp-ch-pick{padding:4px 18px 18px;display:flex;flex-direction:column;gap:12px;}
.ttp-ch-pick input[type="search"]{width:100%;box-sizing:border-box;border:1.5px solid #cfdcff;border-radius:999px;padding:11px 16px;font-size:15px;font-family:inherit;background:#fff;color:#0c1430;}
.ttp-ch-pick input[type="search"]:focus{outline:none;border-color:#2f5bff;box-shadow:0 0 0 3px rgba(47,91,255,.12);}
.ttp-ch-pres{display:flex;flex-direction:column;margin:0 -18px;}
.ttp-ch-hint{margin:6px 18px;color:#5c657c;font-size:14px;line-height:1.5;}
.ttp-ch-all{align-self:flex-start;color:#2f5bff !important;font-weight:800;font-size:14px;text-decoration:none !important;}
.ttp-ch-note{margin:8px 18px 4px;background:#fff5e0;border:1px solid #f3dca4;color:#7a5200;border-radius:12px;padding:10px 14px;font-size:14px;line-height:1.5;}
.ttp-card.is-me .ttp-card-actions .ttp-in{display:none !important;}
.ttp-card.is-me .ttp-card-name a::after{content:"Jij";margin-left:8px;font-size:11px;font-weight:800;color:#2f5bff;background:#eef3ff;border-radius:999px;padding:3px 8px;vertical-align:middle;}

/* ttp-gegevens: kerngegevens als tegels + nette lijst */
.ttp-gegevens h2{margin-bottom:16px;}
.ttp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e8ecf6;border:1px solid #e8ecf6;border-radius:14px;overflow:hidden;margin:0 0 6px;}
.ttp-stat{background:#f7f9fe;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;padding:16px 10px;min-width:0;}
.ttp-stat-v{font-size:18px;font-weight:800;line-height:1.2;color:#0c1430;}
.ttp-stat-l{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#5c657c;}
.ttp-stats-3{grid-template-columns:repeat(3,1fr);}
.ttp-stats-2{grid-template-columns:repeat(2,1fr);}
.ttp-stats-1{grid-template-columns:1fr;}
@media (max-width:600px){.ttp-stats-3,.ttp-stats-4{grid-template-columns:1fr 1fr;}}
.ttp-dl2{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));column-gap:32px;}
.ttp-dl2-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px solid #eef1f8;}
.ttp-dl2-row:last-child{border-bottom:0;}
.ttp-dl2-row dt{margin:0;flex:none;font-size:14px;font-weight:500;color:#5c657c;}
.ttp-dl2-row dd{margin:0;min-width:0;text-align:right;font-size:15px;font-weight:700;color:#0c1430;overflow-wrap:anywhere;}
.ttp-dl2-row dd a{color:#2f5bff;text-decoration:none;}
@media (max-width:600px){
.ttp-card2{padding:20px 18px;}
.ttp-stats{grid-template-columns:1fr 1fr;}
.ttp-stat:last-child:nth-child(odd){grid-column:1/-1;}
.ttp-stat{padding:14px 8px;}
.ttp-stat-v{font-size:17px;}
}

/* ttp-noav: standaard The Talent Pool-avatar zonder foto */
.ttp-noav{background:linear-gradient(150deg,#f4f7ff,#dce6ff) !important;display:flex;align-items:center;justify-content:center;}
.ttp-noav img.ttp-noav-mark{width:56% !important;height:auto !important;max-height:70%;object-fit:contain !important;display:block;}
.ttp-noimg.ttp-noav img.ttp-noav-mark{width:34% !important;}
.ttp-ch-av.ttp-noav img.ttp-noav-mark{width:62% !important;}
img.ttp-noav-img{background:linear-gradient(150deg,#f4f7ff,#dce6ff);object-fit:contain;padding:14%;box-sizing:border-box;}


/* ===== TTP v18: foto bijsnijden ===== */
body.ttp-crop-on[data-ttp-nav="upload"] .bp-avatar{display:none !important;}
body.ttp-crop-on:not([data-ttp-nav="upload"]) .ttp-crop{display:none !important;}
body.ttp-crop-on li#bp-avatar-camera{display:none !important;}
.ttp-crop{max-width:520px;margin:10px auto 0;font-family:'Manrope',sans-serif;color:#0c1430;}
.ttp-crop [hidden]{display:none !important;}
.ttp-crop-drop{border:2px dashed #b9c9f5;border-radius:18px;background:#fbfcff;padding:36px 24px;text-align:center;transition:border-color .15s,background .15s;}
.ttp-crop-drop.is-over{border-color:#2f5bff;background:#eef3ff;}
.ttp-crop-ic{width:68px;height:68px;border-radius:50%;background:#eef3ff;color:#2f5bff;display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.ttp-crop h3{margin:0 0 6px;font-size:20px;font-weight:800;color:#0c1430;letter-spacing:-.01em;}
.ttp-crop p{margin:0 0 16px;color:#5c657c;font-size:14.5px;line-height:1.55;}
.ttp-crop-edit,.ttp-crop-done{text-align:center;}
.ttp-crop-stage{position:relative;width:fit-content;margin:16px auto 10px;border-radius:18px;overflow:hidden;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:0 14px 34px -18px rgba(12,20,48,.55);background:#e8ecf6;}
.ttp-crop-stage.is-drag{cursor:grabbing;}
.ttp-crop-stage canvas{display:block;max-width:100%;}
.ttp-crop-ring{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle closest-side,transparent 99%,rgba(12,20,48,.58) 100%);}
.ttp-crop-ring::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(255,255,255,.95);box-sizing:border-box;}
.ttp-crop-ctrl{display:flex;align-items:center;gap:12px;max-width:360px;margin:10px auto 0;}
.ttp-crop-z{font-size:22px;font-weight:700;color:#5c657c;width:16px;text-align:center;line-height:1;}
.ttp-crop-ctrl input[type="range"]{flex:1;min-width:0;accent-color:#2f5bff;height:28px;}
.ttp-crop button.ttp-crop-rot{width:40px;height:40px;border-radius:50%;border:1.5px solid #dfe6f5;background:#fff;color:#2f5bff;font-size:20px;line-height:1;cursor:pointer;padding:0;flex-shrink:0;}
.ttp-crop button.ttp-crop-rot:hover{background:#eef3ff;}
.ttp-crop .ttp-crop-tip{margin:10px 0 0;font-size:13.5px;color:#8a93a8;}
.ttp-crop-msg{margin:12px auto 0;max-width:420px;font-size:14px;line-height:1.5;border-radius:12px;padding:10px 14px;}
.ttp-crop-msg:empty{display:none;}
.ttp-crop-msg.is-error{background:#fdecec;border:1px solid #f4c2c2;color:#b42318;}
.ttp-crop-msg.is-warn{background:#fff5e0;border:1px solid #f3dca4;color:#7a5200;}
.ttp-crop-actions{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap;}
.ttp-crop-done{padding:24px 10px;}
.ttp-crop-check{width:56px;height:56px;border-radius:50%;background:#e7f8ee;color:#0b6b3a;font-size:28px;font-weight:800;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;}
#ttp-crop-new{width:140px;height:140px;border-radius:50%;object-fit:cover;display:block;margin:6px auto 4px;box-shadow:0 14px 30px -14px rgba(12,20,48,.5);border:4px solid #fff;}
@media (max-width:480px){.ttp-crop-drop{padding:28px 16px;}}

/* ttp-dl2 v2: gegevens als rustig raster (label boven waarde) */
.ttp-dl2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;margin:0;}
.ttp-stats + .ttp-dl2{margin-top:20px;padding-top:20px;border-top:1px solid #eef1f8;}
.ttp-dl2-row{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:0;border:0;min-width:0;}
.ttp-dl2-row dt{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#5c657c;}
.ttp-dl2-row dd{text-align:left;font-size:15.5px;font-weight:700;color:#0c1430;}
@media (max-width:600px){.ttp-dl2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;}.ttp-stats + .ttp-dl2{margin-top:16px;padding-top:16px;}}


/* ===== TTP v18b: knoppen bijsnijden ===== */
body #buddypress .ttp-crop button.ttp-btn,body #buddypress .ttp-crop a.ttp-btn{display:inline-flex !important;align-items:center;justify-content:center;padding:12px 26px !important;border-radius:999px !important;font-size:15px !important;font-weight:800 !important;font-family:inherit;cursor:pointer;text-decoration:none !important;border:1.5px solid transparent !important;line-height:1.2;width:auto !important;}
body #buddypress .ttp-crop .ttp-btn-primary{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;box-shadow:0 12px 24px -12px rgba(47,91,255,.7) !important;}
body #buddypress .ttp-crop .ttp-btn-ghost{background:#fff !important;color:#2f5bff !important;border-color:#cfdcff !important;box-shadow:none !important;}
body #buddypress .ttp-crop .ttp-btn-ghost:hover{background:#eef3ff !important;}
body #buddypress .ttp-crop .ttp-btn:disabled{opacity:.6;cursor:default;}

/* ttp-conn: connecties (vriendschappen) op het profiel */
.ttp-conn{color:#5c657c;text-decoration:none;}
.ttp-conn strong{color:#0c1430;font-weight:800;}
.ttp-conn:hover .ttp-conn-l{text-decoration:underline;}
.ttp-conn-req{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:#eef3ff;color:#2f5bff;font-size:13px;font-weight:700;text-decoration:none;}
.ttp-conn-req:hover{background:#dfe6f5;}
.ttp-conn-wrap{display:contents;}
.ttp-conn-btn{gap:6px;}
.ttp-conn-btn svg{flex:none;}
.ttp-conn-wait{background:#f3f6fb;color:#5c657c !important;border-color:#e1e7f5;}
.ttp-conn-on{color:#0c1430 !important;border-color:#e1e7f5;}
.ttp-conn-on:hover{background:#fdecec;border-color:#f4c2c2;color:#b42318 !important;}
.ttp-conn-wrap.is-busy .ttp-conn-btn{opacity:.55;pointer-events:none;}

/* ttp-x: beschikbaarheid, voet, coachvelden, chipfilters, profielsterkte */
.ttp-badge-inline.ttp-av{display:inline-flex;align-items:center;gap:6px;}
.ttp-badge-inline.ttp-av::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;}
.ttp-badge-inline.ttp-av-ok{background:#e3f7ec;color:#0f7a4f;border:1.5px solid #bfe8d2;}
.ttp-badge-inline.ttp-av-mid{background:#fff3e0;color:#9a5a00;border:1.5px solid #f3d9a8;}
.ttp-badge-inline.ttp-av-no{background:#f0f2f7;color:#5c657c;border:1.5px solid #dde2ec;}
.ttp-stats-5{grid-template-columns:repeat(5,1fr);}
@media (max-width:600px){.ttp-stats-5{grid-template-columns:1fr 1fr;}}
.ttp-avrow{font-weight:700;}
.ttp-avrow i{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block;flex-shrink:0;margin:0 3px;}
.ttp-avrow.ttp-av-ok{color:#0f8a5f;}
.ttp-avrow.ttp-av-mid{color:#b46a00;}
.ttp-avrow.ttp-av-no{color:#8a93a8;}
#ttp-filters .ttp-f-block:has(.ttp-check){display:flex;flex-wrap:wrap;gap:8px;}
#ttp-filters .ttp-f-block:has(.ttp-check) .ttp-f-title{flex-basis:100%;}
#ttp-filters .ttp-check{position:relative;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1.5px solid #dfe5f2;border-radius:999px;background:#fff;font-size:13.5px;font-weight:600;color:#26304f;transition:background .15s,border-color .15s,color .15s;}
#ttp-filters .ttp-check:hover{border-color:#2f5bff;}
#ttp-filters .ttp-check input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none;}
#ttp-filters .ttp-check-l{flex:none;}
#ttp-filters .ttp-check-n{font-size:12px;color:#8a93a8;}
#ttp-filters .ttp-check:has(input:checked){background:#2f5bff;border-color:#2f5bff;color:#fff;}
#ttp-filters .ttp-check:has(input:checked) .ttp-check-n{color:rgba(255,255,255,.8);}
#ttp-filters .ttp-check:has(input:focus-visible){outline:2px solid #2f5bff;outline-offset:2px;}
.ttp-res-bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px;}
.ttp-res-n{font-size:15px;font-weight:800;color:#0c1430;}
.ttp-strength{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#0c1430,#1f3a8f);color:#fff;border-radius:16px;padding:18px 22px;margin:0 0 20px;box-shadow:0 12px 28px -18px rgba(12,20,48,.6);}
.ttp-strength-main{flex:1;min-width:0;}
.ttp-strength strong{font-size:16px;font-weight:800;}
.ttp-strength-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.18);margin:10px 0 8px;max-width:440px;overflow:hidden;}
.ttp-strength-bar div{height:100%;border-radius:99px;background:linear-gradient(90deg,#4cc99a,#7ee0b5);}
.ttp-strength p{margin:0;font-size:13.5px;color:#c9d2ea;line-height:1.5;}
.ttp-strength .ttp-btn.ttp-btn-primary{flex:none;background:#fff !important;color:#0c1430 !important;border-color:#fff !important;box-shadow:none;}
@media (max-width:600px){.ttp-strength{flex-direction:column;align-items:stretch;padding:16px 18px;}.ttp-strength .ttp-btn{text-align:center;}}

/* ttp-fb: ledenoverzicht met filterbalk en resultaatrijen */
body.ttp-dir2 .ttp-fb-head{align-items:flex-end;margin-bottom:20px;}
.ttp-fb-search{display:flex;align-items:center;gap:10px;width:400px;max-width:100%;height:48px;padding:0 18px;background:#fff;border:1.5px solid #cfd8ea;border-radius:999px;color:#5c657c;box-sizing:border-box;transition:border-color .15s,box-shadow .15s;}
.ttp-fb-search:focus-within{border-color:#2f5bff;box-shadow:0 0 0 3px rgba(47,91,255,.14);}
#ttp-dir .ttp-fb-search input{flex:1;min-width:0;border:0 !important;padding:0 !important;margin:0;background:transparent !important;box-shadow:none !important;font:500 15px 'Manrope',sans-serif;color:#0c1430;outline:none;height:auto;}
.ttp-fb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid #e1e7f5;position:relative;z-index:20;}
.ttp-fb-item{position:relative;}
.ttp-pill2{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 16px;border-radius:999px;border:1.5px solid #cfd8ea;background:#fff;color:#26304f;font:600 14px 'Manrope',sans-serif;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;}
.ttp-pill2:hover{border-color:#2f5bff;color:#0c1430;}
.ttp-pill2.on{background:#2f5bff;border-color:#2f5bff;color:#fff;}
.ttp-pill2.open{box-shadow:0 0 0 3px rgba(47,91,255,.18);}
.ttp-pill2.ttp-fb-all{background:#0c1430;border-color:#0c1430;color:#fff;}
.ttp-pill2.ttp-fb-all:hover{background:#1c2a5c;}
.ttp-pill2:focus-visible,.ttp-chip2:focus-visible,.ttp-fb-apply:focus-visible,.ttp-fb-link:focus-visible,.ttp-r-link:focus-visible,.ttp-r-msg:focus-visible{outline:2px solid #2f5bff;outline-offset:2px;}
.ttp-fb-pop{position:absolute;top:calc(100% + 8px);left:0;width:320px;background:#fff;border:1px solid #e1e7f5;border-radius:16px;box-shadow:0 24px 48px -20px rgba(12,20,48,.35);padding:14px 12px 12px;z-index:30;box-sizing:border-box;}
.ttp-fb-pop-t{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#5c657c;padding:0 8px 8px;}
.ttp-fb-opts{display:flex;flex-direction:column;max-height:300px;overflow-y:auto;}
.ttp-fb-opt{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:8px;font-size:14.5px;color:#0c1430;cursor:pointer;}
.ttp-fb-opt:hover{background:#f3f6fb;}
.ttp-fb-opt input{width:18px;height:18px;margin:0;accent-color:#2f5bff;flex:none;}
.ttp-fb-opt-l{flex:1;}
.ttp-fb-opt-n{font-size:13px;color:#8a93a8;}
#ttp-dir .ttp-fb-pq{width:100%;box-sizing:border-box;margin:0 0 8px;border-radius:999px !important;}
.ttp-fb-pop-f{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #eef1f8;margin-top:8px;padding-top:10px;}
.ttp-fb-apply{height:40px;padding:0 18px;border-radius:999px;border:0;background:#2f5bff;color:#fff;font:700 14px 'Manrope',sans-serif;cursor:pointer;}
.ttp-fb-apply:hover{background:#1f43d6;}
.ttp-fb-link{background:none;border:0;padding:6px 4px;color:#2f5bff;font:700 14px 'Manrope',sans-serif;cursor:pointer;}
.ttp-fb-link:hover{text-decoration:underline;}
.ttp-fb-age{display:flex;align-items:center;gap:10px;padding:4px 6px;color:#5c657c;font-size:14px;}
#ttp-dir .ttp-fb-age input{width:96px;border-radius:12px !important;}
.ttp-fb-res{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px;margin:0 0 14px;}
.ttp-fb-res .ttp-res-n{font-size:16px;font-weight:800;color:#0c1430;}
.ttp-fb-sort{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:14px;color:#5c657c;font-weight:600;}
#ttp-dir .ttp-fb-sort select{width:auto;border-radius:999px !important;padding:8px 14px !important;font-weight:600;}
.ttp-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.ttp-r{position:relative;display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #e8ecf6;border-radius:16px;padding:16px 18px;box-shadow:0 8px 24px -20px rgba(12,20,48,.35);transition:border-color .15s,box-shadow .15s,transform .15s;}
.ttp-r:hover{border-color:#cdd9ff;box-shadow:0 16px 32px -20px rgba(12,20,48,.4);transform:translateY(-1px);}
.ttp-r.is-me{border-color:#cdd9ff;background:#fbfcff;}
.ttp-r-av{width:64px;height:64px;border-radius:50%;overflow:hidden;flex:none;background:#e8eefc;display:flex;align-items:center;justify-content:center;}
.ttp-r-av img{width:100%;height:100%;object-fit:cover;display:block;}
.ttp-r-av.ttp-noav img.ttp-noav-mark{width:56% !important;height:auto !important;}
.ttp-r-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;}
.ttp-r-name{margin:0;font-size:16.5px;font-weight:800;line-height:1.3;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;}
.ttp-r-link{color:#0c1430 !important;text-decoration:none !important;}
.ttp-r-link::after{content:"";position:absolute;inset:0;border-radius:16px;}
.ttp-r:hover .ttp-r-link{color:#2f5bff !important;}
.ttp-r-lead{font-size:15px;font-weight:700;color:#2f5bff;}
.ttp-r-lead i{font-style:normal;color:#b5bdd0;margin-right:8px;}
.ttp-r-me{font-size:11px;font-weight:800;color:#2f5bff;background:#eef3ff;border-radius:999px;padding:3px 8px;}
.ttp-r-sub{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#26304f;min-width:0;}
.ttp-r-sub svg{color:#8a93a8;flex:none;}
.ttp-r-sub span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ttp-r-meta{display:flex;flex-wrap:wrap;gap:0 8px;font-size:13.5px;color:#5c657c;}
.ttp-r-meta i{font-style:normal;color:#c0c7d6;}
.ttp-r-empty{font-style:italic;color:#98a0b3;}
.ttp-r-side{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex:none;}
.ttp-r-role{font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;background:#eef3ff;color:#2f5bff;}
.ttp-r-role.ttp-b-coach{background:#f1ecff;color:#5b3fd6;}
.ttp-r-role.ttp-b-club{background:#0c1430;color:#fff;}
.ttp-r-role.ttp-b-scheidsrechter{background:#eceef3;color:#26304f;}
.ttp-r-role.ttp-b-zaakwaarnemer{background:#fbf3dd;color:#7a5800;}
.ttp-r-role.ttp-b-scout{background:#e5f6ee;color:#0f6b45;}
.ttp-r-msg{position:relative;z-index:2;font-size:13px;font-weight:700;color:#2f5bff !important;border:1.5px solid #cdd9ff;border-radius:999px;padding:6px 14px;text-decoration:none !important;background:#fff;}
.ttp-r-msg:hover{background:#eef3ff;}
.ttp-r-go{display:none;color:#b5bdd0;}
.ttp-fb-shade{position:fixed;inset:0;background:rgba(12,20,48,.45);z-index:99998;}
.ttp-fb-panel{position:fixed;top:0;right:0;bottom:0;width:460px;max-width:100%;background:#fff;z-index:99999;display:flex;flex-direction:column;box-shadow:-24px 0 48px -24px rgba(12,20,48,.4);font-family:'Manrope',sans-serif;color:#0c1430;animation:ttpFbIn .22s ease-out;}
body.admin-bar .ttp-fb-panel{top:32px;}
@keyframes ttpFbIn{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
.ttp-fb-panel-h{display:flex;align-items:center;justify-content:space-between;padding:20px 26px;border-bottom:1px solid #eef1f8;}
.ttp-fb-panel-h h2{margin:0;font-size:21px;font-weight:800;}
.ttp-fb-x{width:44px;height:44px;border:0;background:transparent;font-size:26px;line-height:1;color:#0c1430;cursor:pointer;border-radius:50%;}
.ttp-fb-x:hover{background:#f3f6fb;}
.ttp-fb-panel-b{flex:1;overflow-y:auto;padding:4px 26px 20px;}
.ttp-fb-sec{padding:18px 0;border-bottom:1px solid #eef1f8;}
.ttp-fb-sec h3{margin:0 0 12px;font-size:15px;font-weight:800;}
.ttp-fb-chips{display:flex;flex-wrap:wrap;gap:8px;}
.ttp-chip2{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 14px;border-radius:999px;border:1.5px solid #cfd8ea;background:#fff;color:#26304f;font:600 14px 'Manrope',sans-serif;cursor:pointer;}
.ttp-chip2:hover{border-color:#2f5bff;}
.ttp-chip2.on{background:#2f5bff;border-color:#2f5bff;color:#fff;}
.ttp-chip2 span{font-size:12px;opacity:.7;}
.ttp-fb-switch{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;cursor:pointer;}
.ttp-fb-switch input{width:20px;height:20px;accent-color:#2f5bff;margin:0;}
.ttp-fb-panel-f{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 26px;border-top:1px solid #eef1f8;}
body.ttp-fb-lock{overflow:hidden;}
@media (max-width:900px){.ttp-list{grid-template-columns:1fr;}}
@media (max-width:720px){
body.ttp-dir2 .ttp-fb-head{flex-direction:column;align-items:stretch;gap:14px;}
.ttp-fb-search{width:100%;}
.ttp-fb{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-14px;margin-right:-14px;padding:2px 14px 14px;}
.ttp-fb::-webkit-scrollbar{display:none;}
.ttp-fb-item{flex:none;}
.ttp-pill2{height:38px;padding:0 14px;font-size:13.5px;flex:none;}
.ttp-pill2.ttp-fb-all{order:-1;}
.ttp-fb-sort label{display:none;}
.ttp-r{padding:12px 14px;gap:12px;align-items:center;}
.ttp-r-av{width:54px;height:54px;}
.ttp-r-name{font-size:15.5px;}
.ttp-r-lead{font-size:14px;}
.ttp-r-role,.ttp-r-msg{display:none;}
.ttp-r-go{display:flex;}
.ttp-fb-panel{top:auto;left:0;right:0;bottom:0;width:100%;max-height:88vh;border-radius:22px 22px 0 0;box-shadow:0 -20px 40px -20px rgba(12,20,48,.4);animation:ttpFbUp .24s ease-out;}
body.admin-bar .ttp-fb-panel{top:auto;}
@keyframes ttpFbUp{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}
.ttp-fb-panel-h{padding:14px 20px;}
.ttp-fb-panel-b{padding:0 20px 16px;}
.ttp-fb-panel-f{padding:12px 20px calc(14px + env(safe-area-inset-bottom));}
.ttp-fb-panel-f .ttp-fb-apply{flex:1;height:48px;font-size:15px;}
}
@media (prefers-reduced-motion:reduce){.ttp-fb-panel{animation:none;}.ttp-r{transition:none;}}

@media (max-width:720px){.ttp-r-name{flex-direction:column;align-items:flex-start;gap:1px;}.ttp-r-lead i{display:none;}.ttp-fb-res .ttp-res-n{font-size:15px;}}


/* ===== TTP v19: compacte profielkop met voetbalveld-patroon ===== */
body.ttp-prof .ttp-hero .ttp-cover{height:90px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 420 90' preserveAspectRatio='xMaxYMid slice'><g fill='none' stroke='white' stroke-opacity='.14' stroke-width='2'><circle cx='330' cy='45' r='58'/><line x1='330' y1='-10' x2='330' y2='100'/><path d='M420 12h-62v66h62'/><path d='M420 30h-24v30h24'/></g><circle cx='330' cy='45' r='3.5' fill='white' fill-opacity='.14'/></svg>") right center / auto 100% no-repeat,radial-gradient(circle at 12% 30%,rgba(109,148,255,.45),transparent 50%),linear-gradient(120deg,#0c1430,#152052 60%,#1f3fbf);}
body.ttp-prof .ttp-hero .ttp-avatar{width:124px;height:124px;margin-top:-58px;}
body.ttp-prof .ttp-hero .ttp-avatar span{font-size:44px;}
body.ttp-prof .ttp-hero .ttp-hero-body{padding:0 28px 22px;align-items:flex-end;}
body.ttp-prof .ttp-hero .ttp-hero-main{padding-top:12px;}
body.ttp-prof .ttp-hero .ttp-hero-name{font-size:28px;}
body.ttp-prof .ttp-hero .ttp-subline{margin:6px 0 0;}
.ttp-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.ttp-chip{background:#eef3ff;color:#1c3fbf;border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700;line-height:1.2;}
@media (max-width:700px){
  body.ttp-prof .ttp-hero .ttp-cover{height:60px;}
  body.ttp-prof .ttp-hero .ttp-avatar{width:96px;height:96px;margin-top:-46px;}
  body.ttp-prof .ttp-hero .ttp-hero-name{font-size:23px;}
  body.ttp-prof .ttp-hero .ttp-hero-body{padding:0 18px 18px;}
  .ttp-chip{font-size:13px;padding:5px 12px;}
}


/* ===== TTP v19b: profielkop compacter op mobiel ===== */
@media (max-width:700px){
  body.ttp-prof .ttp-hero .ttp-avatar{width:88px;height:88px;margin-top:-42px;}
  body.ttp-prof .ttp-hero .ttp-hero-main{min-width:0;flex-basis:100%;padding-top:4px;}
  body.ttp-prof .ttp-hero .ttp-hero-name{font-size:22px;gap:6px 8px;}
  body.ttp-prof .ttp-hero .ttp-hero-actions{flex-basis:100%;flex-wrap:nowrap;gap:8px;padding-top:4px;}
  body.ttp-prof .ttp-hero .ttp-hero-actions .ttp-btn{flex:1;padding:11px 8px;font-size:14px;white-space:nowrap;}
  .ttp-chips{gap:6px;margin-top:10px;}
}


/* ===== TTP v19c: gegevens eerst op mobiel ===== */
@media (max-width:700px){
  body.ttp-prof .ttp-prof-main{display:flex;flex-direction:column;}
  body.ttp-prof .ttp-prof-main .ttp-gegevens{order:-1;}
}

/* ttp-fb optie A: desktop brede rijen met vaste kolommen */
.ttp-r-cols{display:flex;gap:20px;flex:none;}
.ttp-r-c{display:flex;flex-direction:column;gap:2px;flex:none;min-width:0;}
.ttp-r-c.c1{width:76px;}
.ttp-r-c.c2{width:100px;}
.ttp-r-c.c3{width:64px;}
.ttp-r-c.c4{width:128px;}
.ttp-r-c.c5{width:120px;}
.ttp-r-cl{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#8a93a8;}
.ttp-r-cv{font-size:15px;font-weight:700;color:#0c1430;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media (min-width:901px){
body.ttp-dir2 .ttp-list{grid-template-columns:1fr;gap:10px;}
body.ttp-dir2 .ttp-r{gap:20px;padding:14px 20px;}
body.ttp-dir2 .ttp-r-av{width:56px;height:56px;}
body.ttp-dir2 .ttp-r-main{min-width:200px;}
body.ttp-dir2 .ttp-r-meta{display:none;}
body.ttp-dir2 .ttp-r-side{flex-direction:row;align-items:center;justify-content:flex-end;gap:12px;width:210px;}
body.ttp-dir2 .ttp-r-role{min-width:62px;text-align:center;}
body.ttp-dir2 .ttp-r-go{display:flex;}
}
@media (max-width:1180px){.ttp-r-c.c3,.ttp-r-c.c5{display:none;}}
@media (max-width:900px){.ttp-r-cols{display:none;}}

@media (min-width:901px){body.ttp-dir2 .ttp-r-name{flex-direction:column;align-items:flex-start;gap:1px;}body.ttp-dir2 .ttp-r-lead i{display:none;}}

/* ttp-friends: pagina Connecties / Verzoeken */
body.ttp-friends #subnav,body.ttp-friends #subnav-filters,body.ttp-friends .bp-pagination .pag-count{display:none !important;}
body.ttp-prof-plain main .ttp-tabs{max-width:1040px;margin:0 auto 16px !important;width:100%;}
.ttp-tabs{display:flex;gap:8px;font-family:'Manrope',sans-serif;}
.ttp-tab{padding:9px 20px;border-radius:999px;border:1px solid #e1e7f5;background:#fff;color:#5c657c !important;font-size:14px;font-weight:700;text-decoration:none !important;}
.ttp-tab:hover{background:#eef3ff;color:#2f5bff !important;}
.ttp-tab.on{background:#0c1430;border-color:#0c1430;color:#fff !important;}
body.ttp-friends #friend-list{list-style:none !important;margin:0 !important;padding:0 !important;display:flex !important;flex-direction:column;gap:10px;}
body.ttp-friends #friend-list > li{display:flex !important;align-items:center;gap:16px;width:auto !important;min-height:0 !important;margin:0 !important;padding:14px 16px !important;float:none !important;border:1px solid #e8ecf6 !important;border-radius:14px !important;background:#fff !important;box-shadow:none !important;}
body.ttp-friends #friend-list > li > *{float:none !important;margin:0 !important;}
body.ttp-friends #friend-list .item-avatar{flex:none;width:60px !important;height:60px !important;padding:0 !important;}
body.ttp-friends #friend-list .item-avatar a{display:block;}
body.ttp-friends #friend-list .item-avatar img{display:block;width:60px !important;height:60px !important;max-width:none !important;border-radius:50% !important;object-fit:cover;border:0 !important;}
body.ttp-friends #friend-list .item{flex:1;min-width:0;width:auto !important;padding:0 !important;text-align:left !important;}
body.ttp-friends #friend-list .item-title{margin:0 !important;font-size:16px !important;line-height:1.3;}
body.ttp-friends #friend-list .item-title a{color:#0c1430 !important;font-weight:800;text-decoration:none !important;}
body.ttp-friends #friend-list .item-title a:hover{color:#2f5bff !important;}
body.ttp-friends #friend-list .item-meta{margin:3px 0 0 !important;font-size:13px;color:#8a93a8;text-align:left !important;}
body.ttp-friends #friend-list .action{display:flex !important;align-items:center;gap:8px;flex:none;position:static !important;width:auto !important;padding:0 !important;}
body.ttp-friends #friend-list .action .generic-button{margin:0 !important;display:block;}
body.ttp-friends #friend-list .action .generic-button button,body.ttp-friends #friend-list .action .generic-button a{display:inline-flex;align-items:center;justify-content:center;margin:0 !important;padding:9px 18px !important;border-radius:999px !important;border:1.5px solid #cdd9ff !important;background:#fff !important;color:#2f5bff !important;font-family:inherit;font-size:14px !important;font-weight:700 !important;line-height:1.2 !important;text-decoration:none !important;cursor:pointer;box-shadow:none !important;}
body.ttp-friends #friend-list .action .generic-button button:hover,body.ttp-friends #friend-list .action .generic-button a:hover{background:#eef3ff !important;}
body.ttp-friends #friend-list .action button.accept{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;border-color:transparent !important;color:#fff !important;}
body.ttp-friends #friend-list .action button.accept:hover{opacity:.92;}
body.ttp-friends #buddypress .bp-feedback{border-radius:12px;}
@media (max-width:600px){
body.ttp-friends #friend-list > li{flex-wrap:wrap;gap:12px;}
body.ttp-friends #friend-list .item{flex:1 1 calc(100% - 76px);}
body.ttp-friends #friend-list .action{width:100% !important;}
body.ttp-friends #friend-list .action .generic-button{flex:1;}
body.ttp-friends #friend-list .action .generic-button button,body.ttp-friends #friend-list .action .generic-button a{width:100%;}
}

.ttp-r-nl{display:inline-flex;align-items:center;gap:8px;min-width:0;}


/* ===== TTP v20: Talent Pool-kaart ===== */
.ttp-kaart{--w:240px;--u:calc(var(--w) / 220);position:relative;width:var(--w);aspect-ratio:315/480;font-family:'Manrope',sans-serif;display:block;}
.ttp-k-rim,.ttp-k-frame,.ttp-k-inner{position:absolute;clip-path:url(#ttpShield);}
.ttp-k-rim{inset:0;background:linear-gradient(155deg,#fff6df,#e9c874 55%,#c9a24a);}
.ttp-k-frame{inset:calc(3 * var(--u));background:linear-gradient(155deg,#fffaf0,#f3e0af 60%,#d9b56a);}
.ttp-k-inner{inset:calc(8 * var(--u));overflow:hidden;background:linear-gradient(160deg,#ffffff,#f7f3e8);}
.ttp-k-photo{position:relative;width:100%;height:52%;overflow:hidden;background:#0a1024;}
.ttp-k-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block;}
.ttp-k-shade{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(6,10,26,0) 55%,rgba(6,10,26,.55) 100%);}
.ttp-k-pos{position:absolute;top:calc(40 * var(--u));left:calc(24 * var(--u));color:#fff;font-weight:800;font-size:calc(13 * var(--u));letter-spacing:.03em;text-shadow:0 2px 5px rgba(0,0,0,.5);z-index:2;line-height:1;}
.ttp-k-name{position:absolute;top:calc(52% + 6 * var(--u));left:0;right:0;text-align:center;font-weight:800;font-size:calc(12.5 * var(--u));color:#0c1430;text-transform:uppercase;padding:0 calc(14 * var(--u));white-space:nowrap;z-index:2;}
.ttp-kaart.ttp-k-long .ttp-k-name{font-size:calc(10.5 * var(--u));}
.ttp-kaart.ttp-k-longer .ttp-k-name{font-size:calc(9 * var(--u));}
.ttp-k-hr{position:absolute;top:calc(52% + 27 * var(--u));left:calc(24 * var(--u));right:calc(24 * var(--u));height:calc(1.5 * var(--u));background:#a9bdf2;}
.ttp-k-facts{position:absolute;top:calc(52% + 34 * var(--u));left:calc(24 * var(--u));right:calc(24 * var(--u));font-size:calc(8.8 * var(--u));line-height:calc(15.5 * var(--u));z-index:2;color:#5c657c;}
.ttp-k-facts>div{display:flex;justify-content:space-between;align-items:center;gap:calc(8 * var(--u));height:calc(15.5 * var(--u));white-space:nowrap;}
.ttp-k-facts b{color:#0c1430;font-weight:800;text-align:right;}
.ttp-k-logo{position:absolute;bottom:calc(8 * var(--u));left:50%;transform:translateX(-50%);width:calc(24 * var(--u));height:calc(24 * var(--u));object-fit:contain;z-index:2;}
.ttp-k-ghost .ttp-k-rim{background:#cfd6e6;}
.ttp-k-ghost .ttp-k-frame{background:#e7ebf4;}
.ttp-k-ghost .ttp-k-inner{background:#f3f5fa;display:flex;align-items:center;justify-content:center;}
.ttp-k-lock{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.ttp-kaart-sec .ttp-kaart,.ttp-kaart-lock .ttp-kaart{margin:0 auto;}
.ttp-kaart-lock .ttp-kaart{--w:150px;margin:12px auto 6px;}
.ttp-kaart-lock-t{text-align:center;font-weight:700;color:#0c1430;margin:10px 0 6px;}
button.ttp-kaart-open{background:none !important;border:none !important;padding:0 !important;cursor:pointer;display:block;margin:8px auto 0;transition:transform .2s;box-shadow:none !important;border-radius:0 !important;}
button.ttp-kaart-open:hover{transform:translateY(-4px);}
.ttp-kaart-hint{text-align:center;color:#8a93a8;font-size:13px;margin:12px 0 0;}
.ttp-kaart-hero-btn{display:none !important;}
body.ttp-kaart-open{overflow:hidden;}
.ttp-kmodal{position:fixed;inset:0;background:rgba(12,20,48,.82);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;}
.ttp-kmodal-in{position:relative;display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:6px;}
.ttp-kmodal .ttp-kaart{--w:min(340px,calc(100vw - 80px),calc((100dvh - 200px) / 1.524));}
.ttp-kmodal-x{position:absolute;top:-6px;right:-6px;width:38px;height:38px;border-radius:50%;background:#fff;color:#0c1430;border:none;font-size:24px;line-height:1;cursor:pointer;z-index:3;padding:0;}
.ttp-kmodal-actions{display:flex;gap:10px;}
.ttp-kbtn{border-radius:999px;padding:12px 24px;font-size:15px;font-weight:800;font-family:'Manrope',sans-serif;cursor:pointer;border:1.5px solid #cfdcff;background:#fff;color:#2f5bff;}
.ttp-kbtn-p{background:linear-gradient(135deg,#2f5bff,#6d94ff);color:#fff;border-color:transparent;}
.ttp-kmodal-msg{margin:0;color:#dfe6ff;font-size:14px;min-height:20px;}
@media (max-width:900px){
  .ttp-kaart-hero-btn{display:inline-flex !important;flex-basis:100%;}
}


/* ===== TTP v20b: kaartknop op mobiel ===== */
@media (max-width:900px){
  body.ttp-prof .ttp-hero .ttp-hero-actions:has(.ttp-kaart-hero-btn){flex-wrap:wrap;}
  body.ttp-prof .ttp-hero .ttp-hero-actions .ttp-kaart-hero-btn{flex:1 1 100%;justify-content:center;order:-1;}
}


/* ===== TTP v21: card zonder vergroten, met downloaden en delen (alleen eigenaar) ===== */
.ttp-kaart-sub{margin:4px 0 6px;color:#5c657c;font-size:14px;line-height:1.5;text-align:center;}
.ttp-kaart-show{display:flex;justify-content:center;margin:12px 0 0;}
.ttp-kaart-actions{display:flex;gap:10px;margin-top:18px;}
.ttp-kaart-actions .ttp-kbtn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 10px;}
.ttp-kaart-msg{margin:10px 0 0;font-size:13.5px;line-height:1.5;color:#5c657c;text-align:center;}
.ttp-kaart-msg:empty{display:none;}
.ttp-kaart-lock h2,.ttp-kaart-sec h2{text-align:center;}


/* ===== TTP v22: card met nationaliteit, positiecode en leeftijd ===== */
.ttp-k-posline{justify-content:center !important;gap:calc(6 * var(--u));font-size:calc(9.5 * var(--u));font-weight:800;color:#0c1430;letter-spacing:.02em;}
.ttp-k-posline b{font-weight:800;color:#0c1430;}
.ttp-k-posline i{font-style:normal;font-weight:800;color:#2f5bff;}
.ttp-k-nat{justify-content:center !important;gap:calc(8 * var(--u));font-size:calc(8.6 * var(--u));}
.ttp-k-nat span{display:inline-flex;align-items:center;gap:calc(3 * var(--u));}
.ttp-k-flag{width:calc(9.6 * var(--u));height:calc(7.2 * var(--u));object-fit:cover;border-radius:calc(1 * var(--u));box-shadow:0 0 0 .5px rgba(12,20,48,.25);display:block;}
.ttp-k-pair span{display:inline-flex;gap:calc(4 * var(--u));}
.ttp-k-facts b{font-weight:800;color:#0c1430;}
.ttp-dl2-row{justify-content:flex-start !important;}
.ttp-nat{display:flex;align-items:center;gap:7px;margin:0 0 3px;}
.ttp-nat:last-child{margin-bottom:0;}
.ttp-flag{width:20px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(12,20,48,.15);display:block;}

/* ttp-natpick: nationaliteit als één keuzeveld (max. 2 landen) */
.ttp-natpick{position:relative;}
.ttp-natpick-btn{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:48px;padding:7px 40px 7px 12px;border:1.5px solid #dfe6f5;border-radius:12px;background:#fff;cursor:pointer;position:relative;font-family:inherit;}
.ttp-natpick-btn:hover,.ttp-natpick.open .ttp-natpick-btn{border-color:#2f5bff;}
.ttp-natpick-btn:focus-visible{outline:none;border-color:#2f5bff;box-shadow:0 0 0 3px rgba(47,91,255,.15);}
.ttp-natpick-ph{color:#8a93a8;font-size:15px;}
.ttp-natpick-cv{position:absolute;right:14px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:2px solid #5c657c;border-bottom:2px solid #5c657c;transform:rotate(45deg);}
.ttp-natpick-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 6px 5px 12px;border-radius:999px;background:#eef3ff;color:#0c1430;font-size:14px;font-weight:700;}
.ttp-natpick-x{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:#5c657c;font-size:17px;line-height:1;cursor:pointer;}
.ttp-natpick-x:hover{background:#dfe6f5;color:#0c1430;}
.ttp-natpick-pop{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:50;background:#fff;border:1px solid #e1e7f5;border-radius:14px;box-shadow:0 12px 32px rgba(12,20,48,.14);padding:10px;}
.ttp-natpick-pop[hidden]{display:none;}
.ttp-natpick-q{width:100%;box-sizing:border-box;padding:10px 12px;border:1.5px solid #dfe6f5;border-radius:10px;font-size:15px;font-family:inherit;}
.ttp-natpick-q:focus{outline:none;border-color:#2f5bff;}
.ttp-natpick-hint{margin:8px 4px 6px;font-size:12.5px;color:#5c657c;}
.ttp-natpick-list{max-height:260px;overflow-y:auto;}
.ttp-natpick-grp{padding:8px 8px 4px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#8a93a8;}
.ttp-natpick-it{position:relative;padding:9px 10px 9px 36px;border-radius:8px;font-size:15px;color:#0c1430;cursor:pointer;}
.ttp-natpick-it::before{content:"";position:absolute;left:10px;top:50%;width:16px;height:16px;margin-top:-9px;border:1.5px solid #cdd9ff;border-radius:5px;background:#fff;}
.ttp-natpick-it:hover{background:#f3f6fb;}
.ttp-natpick-it.on{font-weight:700;}
.ttp-natpick-it.on::before{background:#2f5bff;border-color:#2f5bff;}
.ttp-natpick-it.on::after{content:"";position:absolute;left:16px;top:50%;width:4px;height:8px;margin-top:-7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);}
.ttp-natpick-it.off{color:#b3bacb;cursor:not-allowed;}
.ttp-natpick-it.off:hover{background:transparent;}
.ttp-natpick-none{padding:12px 10px;color:#8a93a8;font-size:14px;}
.ttp-natpick-hide,body.ttp-edit #buddypress .editfield select.ttp-natpick-hide{display:none !important;}


/* ===== TTP v23: positiecode linksboven op de kaart (blauw, gouden streep) ===== */
.ttp-k-code{position:absolute;top:calc(40 * var(--u));left:calc(24 * var(--u));z-index:3;padding:0 0 calc(3.5 * var(--u));color:#2f5bff;font-weight:800;font-size:calc(17 * var(--u));line-height:1;letter-spacing:0;border-bottom:calc(2 * var(--u)) solid #e9c874;-webkit-text-stroke:calc(3 * var(--u)) #fff;paint-order:stroke fill;}


/* ttp-reg klaar: bevestig je e-mail */
.ttp-reg-is-done .ttp-reg-card{align-items:center;}
.ttp-reg-done{text-align:center;max-width:440px;margin:0 auto;}
.ttp-done-ic{position:relative;width:76px;height:76px;margin:0 auto 22px;border-radius:24px;background:#eef3ff;display:flex;align-items:center;justify-content:center;}
.ttp-done-ic i{position:absolute;right:-4px;top:-4px;width:22px;height:22px;border-radius:50%;background:#16a34a;border:3px solid #fff;}
.ttp-done-ic i::after{content:"";position:absolute;left:6px;top:3px;width:5px;height:9px;border:solid #fff;border-width:0 2.4px 2.4px 0;transform:rotate(45deg);}
.ttp-done-kicker{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#16a34a;background:#e7f8ee;border-radius:999px;padding:5px 12px;margin-bottom:14px;}
.ttp-reg-done h1{font-size:30px;}
.ttp-reg-done > p{margin:10px 0 0;color:#5c657c;font-size:16px;line-height:1.55;}
.ttp-reg-done > p strong{color:#0c1430;overflow-wrap:anywhere;}
.ttp-done-open{margin-top:24px;min-width:220px;box-shadow:0 16px 30px -12px rgba(47,91,255,.6);}
.ttp-done-tips{margin:28px 0 0;text-align:left;background:#f6f8ff;border:1px solid #e1e8fb;border-radius:16px;padding:16px 18px;font-size:14.5px;color:#3b4560;}
.ttp-done-tips strong{display:block;color:#0c1430;margin-bottom:6px;}
.ttp-done-tips ul{margin:0;padding-left:18px;line-height:1.7;}
.ttp-done-tips a{color:#2f5bff;font-weight:700;}
.ttp-reg-done .ttp-reg-foot{margin-top:22px;}
.ttp-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:18px;counter-reset:none;}
.ttp-steps li{display:flex;gap:14px;align-items:center;font-size:16.5px;line-height:1.4;color:#c9d6ff;}
.ttp-steps b{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;border:1.5px solid rgba(255,255,255,.3);color:#fff;}
.ttp-steps li.is-done{color:#e6edff;}
.ttp-steps li.is-done b{background:#16a34a;border-color:#16a34a;}
.ttp-steps li.is-done b svg circle{fill:none;}
.ttp-steps li.is-now{color:#fff;font-weight:800;}
.ttp-steps li.is-now b{background:#fff;color:#2f5bff;border-color:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.15);}
@media (max-width:782px){
  .ttp-reg-is-done .ttp-steps{display:none;}
  .ttp-reg-done h1{font-size:25px;}
}


/* ttp-plaats: plaatsnaam-keuzemenu (PDOK) */
.ttp-pl{position:relative;}
.ttp-pl input{width:100%;box-sizing:border-box;}
.ttp-pl-list{display:none;position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:50;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #dfe6f5;border-radius:14px;box-shadow:0 18px 40px -12px rgba(12,20,48,.25);max-height:320px;overflow:auto;}
.ttp-pl-list.is-open{display:block;}
.ttp-pl-list li{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;cursor:pointer;margin:0;}
.ttp-pl-list li.is-act{background:#eef3ff;}
.ttp-pl-n{font-size:15px;font-weight:600;color:#0c1430;}
.ttp-pl-n b{font-weight:800;color:#2f5bff;}
.ttp-pl-s{font-size:13px;color:#6b7590;}
.ttp-pl-list li.ttp-pl-abroad{border-top:1px solid #eef1f7;margin-top:4px;padding-top:12px;}
.ttp-pl-list li.ttp-pl-abroad .ttp-pl-n{font-weight:700;color:#2f5bff;}


/* ===== TTP v24: loginscherm als kaart, geen flits van standaard BuddyPress-profiel ===== */
.ttp-auth-outer{background:#f4f7ff !important;min-height:100vh;align-items:center !important;justify-content:center !important;padding:24px 16px !important;}
.ttp-auth-right{background:#fff !important;border-radius:24px !important;box-shadow:0 24px 64px rgba(12,20,48,.10) !important;padding:40px 36px 32px !important;width:100%;max-width:480px !important;}
.ttp-auth-right .e-con-inner > .elementor-element{width:100%;max-width:100%;align-self:stretch;}
.ttp-auth-right .e-con-inner{gap:0 !important;}
.ttp-auth-right .um{width:100%;max-width:none;margin:0;}
.ttp-auth-right, .ttp-auth-right input, .ttp-auth-right .ttp-ar-foot{font-family:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;}
.ttp-auth-right .um-form input[type=text],.ttp-auth-right .um-form input[type=password]{height:52px;border-radius:14px;font-size:16px;padding:0 16px;}
.ttp-auth-right .um-form input[type=text]:focus,.ttp-auth-right .um-form input[type=password]:focus{border-color:#2f5bff;box-shadow:0 0 0 4px rgba(47,91,255,.12);outline:none;}
.ttp-auth-right .um-left.um-half{float:none;width:100%;margin:0;}
.ttp-auth-right .um-right.um-half{display:none;}
.ttp-auth-right .um-button{width:100%;min-height:52px;border-radius:999px;font-size:16px;font-weight:700;}
.ttp-auth-right .um-col-alt-b{margin-top:16px;text-align:center;}
.ttp-auth-right .ttp-ar-foot{padding:20px 0 0;}
.ttp-auth-right .ttp-ar-wrap{padding:0 0 8px !important;}
.ttp-auth-right .ttp-ar-wrap img{display:block;margin:0 0 14px;}

body.ttp-prof-pending #buddypress{opacity:0;animation:ttpRevealFallback .01s 2.5s forwards;}
body.bp-user #buddypress{transition:opacity .18s ease;}
@keyframes ttpRevealFallback{to{opacity:1;}}


/* ===== TTP v25: meldingenpagina als lijst ===== */
body.ttp-nt-on #buddypress .bp-wrap{display:none !important;}
.ttp-nt{max-width:720px;margin:0 auto;}
.ttp-nt-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 14px;}
.ttp-nt-bar .ttp-set-tabs{margin:0;}
.ttp-nt-all{background:none;border:0;color:#2f5bff;font-weight:700;font-size:14px;cursor:pointer;padding:8px 4px;font-family:inherit;}
.ttp-nt-all:hover{text-decoration:underline;}
.ttp-nt-list{background:#fff;border:1px solid #e8ecf6;border-radius:16px;box-shadow:0 8px 24px -18px rgba(12,20,48,.3);overflow:hidden;}
.ttp-nt-item{display:flex;align-items:center;gap:14px;padding:14px 18px;border-bottom:1px solid #eef1f8;text-decoration:none !important;color:#0c1430 !important;transition:background .12s;}
.ttp-nt-item:last-child{border-bottom:0;}
.ttp-nt-item:hover{background:#f6f8ff;}
.ttp-nt-item.is-new{background:#f4f7ff;}
.ttp-nt-av{flex:0 0 44px;width:44px;height:44px;border-radius:50%;overflow:hidden;background:#e6edff;}
.ttp-nt-av img,.ttp-nt-ph{width:100%;height:100%;object-fit:cover;display:block;}
.ttp-nt-tx{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.ttp-nt-main{font-size:15px;line-height:1.4;}
.ttp-nt-main b{font-weight:800;}
.ttp-nt-time{font-size:13px;color:#7a839b;}
.ttp-nt-dot{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:transparent;}
.ttp-nt-item.is-new .ttp-nt-dot{background:#2f5bff;}
.ttp-nt-empty{padding:44px 20px;text-align:center;color:#5c657c;font-size:15px;}


/* ttp-kaart Beker (blauw), gelijk aan voorbeeld card-beker/jouw-kaart.html */
.ttp-bk-wrap{width:min(290px,100%);margin:0 auto;container-type:inline-size;filter:drop-shadow(0 18px 24px rgba(12,20,48,.35));--c-text:#fff;--c-sub:rgba(225,233,255,.82);--c-accent:#8fb0ff;--c-line:rgba(255,255,255,.22);--c-frame:rgba(143,176,255,.55);--c-glow:rgba(143,176,255,.35);}
.ttp-bk{position:relative;width:100%;aspect-ratio:300/440;font-size:15.5px;font-size:5.3333cqw;font-family:'Manrope',sans-serif;}
.ttp-bk-face{position:absolute;inset:0;clip-path:url(#ttpBeker);background:linear-gradient(160deg,#2a4fd1 0%,#15277a 45%,#0c1430 100%);overflow:hidden;}
.ttp-bk-outline{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;}
.ttp-bk-outline path{fill:none;stroke:var(--c-frame);stroke-width:2;vector-effect:non-scaling-stroke;}
.ttp-bk-pat{position:absolute;inset:0;opacity:.5;background:repeating-linear-gradient(115deg,transparent 0 .9em,var(--c-line) .9em .95em);-webkit-mask-image:linear-gradient(to bottom,#000,transparent 62%);mask-image:linear-gradient(to bottom,#000,transparent 62%);}
.ttp-bk-glow{position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,var(--c-glow),transparent 55%),linear-gradient(115deg,transparent 38%,rgba(255,255,255,.14) 50%,transparent 62%);}
.ttp-bk-photo{position:absolute;right:0;top:3.6%;width:78.7%;height:57.3%;max-width:none;object-fit:cover;object-position:center 20%;-webkit-mask-image:radial-gradient(ellipse 60% 56% at 58% 38%,#000 44%,transparent 86%);mask-image:radial-gradient(ellipse 60% 56% at 58% 38%,#000 44%,transparent 86%);border-radius:0;}
.ttp-bk-side{position:absolute;left:6.7%;top:8%;width:19%;display:flex;flex-direction:column;align-items:center;gap:.4em;}
.ttp-bk-pos{font:800 2.5em/.9 'Barlow Condensed',sans-serif;color:var(--c-text);}
.ttp-bk-bar{width:2.1em;height:2px;border-radius:2px;background:var(--c-accent);}
.ttp-bk-flags{display:flex;flex-direction:column;gap:.35em;margin-top:.3em;}
.ttp-bk-flag{display:block;width:1.75em;height:1.2em;border-radius:3px;object-fit:cover;box-shadow:0 1px 3px rgba(0,0,0,.3);max-width:none;}
.ttp-bk-name{position:absolute;left:0;right:0;top:57.5%;display:flex;flex-direction:column;align-items:center;}
.ttp-bk-first{font:700 .8em/1 'Manrope',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--c-sub);}
.ttp-bk-last{font:800 2.1em/1.05 'Barlow Condensed',sans-serif;letter-spacing:.02em;text-transform:uppercase;color:var(--c-text);white-space:nowrap;}
.ttp-bk-niv{margin-top:.35em;font:800 .95em/1 'Barlow Condensed',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent);}
.ttp-bk-hr{position:absolute;left:7.3%;right:7.3%;height:1px;background:var(--c-line);}
.ttp-bk-hr1{top:75%;}.ttp-bk-hr2{top:87.8%;}
.ttp-bk-stats{position:absolute;left:10%;right:10%;top:76.6%;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);}
.ttp-bk-stat{display:flex;flex-direction:column;align-items:center;gap:.15em;}
.ttp-bk-stat b{font:800 1.55em/1 'Barlow Condensed',sans-serif;color:var(--c-text);white-space:nowrap;}
.ttp-bk-stat span{font:700 .6em/1.2 'Manrope',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--c-sub);}
.ttp-bk-foot{position:absolute;left:14%;right:14%;top:89.2%;display:flex;flex-direction:column;align-items:center;gap:.35em;}
.ttp-bk-club{font:700 .72em/1.2 'Manrope',sans-serif;color:var(--c-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}
.ttp-bk-logo{width:2.1em;height:auto;display:block;}
.ttp-bk-ghost{width:150px;margin:12px auto 6px;filter:none;--c-frame:#d5dcea;}
.ttp-bk-ghost .ttp-bk-face{background:linear-gradient(160deg,#f3f6fb,#e4e9f3);display:flex;align-items:center;justify-content:center;}

/* ttp-kaart Beker: logo volledig in de punt */
.ttp-bk-hr1{top:74.6%;}.ttp-bk-stats{top:76%;}.ttp-bk-hr2{top:85.8%;}
.ttp-bk-foot{top:86.9%;gap:.2em;}
.ttp-bk-logo{width:1.6em;}


/* ===== TTP v26: inloggen en registreren niet tonen aan ingelogde leden in de footer ===== */
body.logged-in footer li:has(> a[href*="/login"]),body.logged-in footer li:has(> a[href*="/register"]){display:none;}


/* ===== TTP v27: foutmeldingen bij registreren, rol en club in chat ===== */
.ttp-ferr{margin:8px 0 0;color:#c62839;font-size:13.5px;font-weight:700;line-height:1.4;}
.ttp-f.has-err input[type=text],.ttp-f.has-err input[type=email],.ttp-f.has-err input[type=password],.ttp-f.has-err select,.editfield.has-err select{border-color:#c62839 !important;box-shadow:0 0 0 3px rgba(198,40,57,.12) !important;}
.ttp-chat .ttp-ch-item-sub{display:block;font-size:12px;line-height:1.3;color:#7a839b;margin:1px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}


/* ===== TTP v28: welkomstblok eerste stappen op eigen profiel ===== */
.ttp-welcome{position:relative;background:linear-gradient(135deg,#0c1430 0%,#152052 100%);color:#fff;border-radius:20px;padding:26px 30px 28px;margin:0 0 20px;box-shadow:0 18px 40px -24px rgba(12,20,48,.6);}
.ttp-welcome .ttp-w-k{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#8fb0ff;margin-bottom:8px;}
.ttp-welcome h2{margin:0 0 6px;font-size:24px;line-height:1.25;font-weight:800;letter-spacing:-.01em;color:#fff;}
.ttp-welcome p{margin:0 0 16px;color:#c9d3f5;font-size:15.5px;line-height:1.55;}
.ttp-welcome .ttp-w-steps{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:8px;counter-reset:w;}
.ttp-welcome .ttp-w-steps li{counter-increment:w;}
.ttp-welcome .ttp-w-steps a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px 8px 8px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff !important;font-weight:700;font-size:14px;text-decoration:none !important;transition:background .15s;}
.ttp-welcome .ttp-w-steps a:hover{background:rgba(255,255,255,.2);}
.ttp-welcome .ttp-w-steps a:before{content:counter(w);display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#2f5bff;color:#fff;font-size:12px;font-weight:800;}
.ttp-welcome .ttp-btn{display:inline-flex;}
.ttp-welcome .ttp-w-x{position:absolute;top:12px;right:14px;width:32px;height:32px;border:0 !important;border-radius:50% !important;background:rgba(255,255,255,.1) !important;color:#fff !important;font-size:20px !important;line-height:1 !important;padding:0 !important;cursor:pointer;box-shadow:none !important;min-height:0 !important;}
.ttp-welcome .ttp-w-x:hover{background:rgba(255,255,255,.22) !important;}
@media(max-width:640px){.ttp-welcome{padding:22px 20px 24px;}.ttp-welcome h2{font-size:21px;padding-right:28px;}.ttp-welcome .ttp-btn{width:100%;justify-content:center;}}


/* ttp-qr: Mijn QR en connectie na scannen */
.ttp-qr-btn{display:inline-flex !important;align-items:center;gap:8px;}
body.ttp-qro-open{overflow:hidden;}
.ttp-qro{position:fixed;inset:0;z-index:100000;background:rgba(8,12,30,.6);display:flex;align-items:center;justify-content:center;padding:16px;font-family:'Manrope',sans-serif;}
.ttp-qrm-in,.ttp-qrs-in{position:relative;width:100%;max-width:380px;box-sizing:border-box;border-radius:26px;display:flex;flex-direction:column;align-items:center;text-align:center;}
.ttp-qrm-in{background:radial-gradient(120% 70% at 50% 0%,#2a4fd1 0%,#15277a 45%,#0c1430 100%);color:#fff;padding:26px 22px 22px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);}
.ttp-qrm-x{position:absolute;right:12px;top:10px;width:38px;height:38px;border-radius:50%;border:0 !important;background:rgba(255,255,255,.12) !important;color:inherit !important;font-size:22px;line-height:1;cursor:pointer;padding:0 !important;box-shadow:none !important;}
.ttp-qrs-in .ttp-qrm-x{background:#eef1f7 !important;color:#0c1430 !important;}
.ttp-qrm-who{display:flex;flex-direction:column;align-items:center;gap:6px;}
.ttp-qrm-who img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.75);background:rgba(255,255,255,.12);}
.ttp-qrm-who img:not([src]){visibility:hidden;}
.ttp-qrm-who strong{font:800 22px/1.05 'Barlow Condensed','Manrope',sans-serif;text-transform:uppercase;letter-spacing:.03em;}
.ttp-qrm-who span{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#c9d6ff;}
.ttp-qrm-box{position:relative;margin-top:16px;background:#fff;border-radius:20px;padding:16px;width:min(260px,100%);box-sizing:border-box;}
.ttp-qrm-code{aspect-ratio:1;display:flex;align-items:center;justify-content:center;}
.ttp-qrm-code svg{display:block;width:100%;height:auto;}
.ttp-qrm-load{font-size:13px;color:#5c657c;}
.ttp-qrs-in .ttp-qrm-load{padding:30px 0;}
.ttp-qrm-mid{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px #fff;}
.ttp-qrm-mid img{width:34px;height:auto;display:block;}
.ttp-qrm-timer{margin-top:14px;font-size:13px;font-weight:700;color:#c9d6ff;}
.ttp-qrm-timer b{color:#fff;font-variant-numeric:tabular-nums;}
.ttp-qrm-bar{width:min(220px,100%);height:5px;border-radius:5px;background:rgba(255,255,255,.18);overflow:hidden;margin-top:8px;}
.ttp-qrm-bar i{display:block;height:100%;width:100%;background:#8fb0ff;border-radius:5px;transition:width 1s linear;}
.ttp-qrm-hint{margin:14px 6px 0;font-size:14px;line-height:1.5;color:#dfe7ff;}
.ttp-qrm-row{display:flex;gap:10px;width:100%;margin-top:18px;}
.ttp-qrm-b{flex:1;display:inline-flex;align-items:center;justify-content:center;border-radius:999px !important;padding:13px 14px !important;font:800 14px/1.1 'Manrope',sans-serif !important;cursor:pointer;text-decoration:none !important;border:1.5px solid #dfe6f5 !important;background:#fff !important;color:#2f5bff !important;box-shadow:none !important;}
.ttp-qrm-in .ttp-qrm-b{background:rgba(255,255,255,.12) !important;border-color:rgba(255,255,255,.28) !important;color:#fff !important;}
.ttp-qrm-p{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;border-color:transparent !important;color:#fff !important;}
.ttp-qrm-b:focus-visible,.ttp-qrm-x:focus-visible{outline:2px solid #8fb0ff;outline-offset:2px;}
.ttp-qrm-msg{margin:12px 0 0;font-size:13px;line-height:1.45;color:#dfe7ff;word-break:break-all;}
.ttp-qrm-msg:empty{display:none;}
.ttp-qrs-in{background:#fff;color:#0c1430;padding:26px 22px 22px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);}
.ttp-qrs-body{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;}
.ttp-qrs-body h3{margin:4px 0 0;font:800 21px/1.25 'Manrope',sans-serif;color:#0c1430;}
.ttp-qrs-body p{margin:0;font-size:14.5px;line-height:1.5;color:#5c657c;}
.ttp-qrs-body .ttp-qrm-b{width:100%;flex:none;margin-top:6px;}
.ttp-qrs-pair{display:flex;align-items:center;margin-top:6px;}
.ttp-qrs-pair img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:3px solid #fff;box-shadow:0 6px 16px rgba(12,20,48,.2);}
.ttp-qrs-link{width:30px;height:30px;border-radius:50%;background:#2f5bff;color:#fff;display:flex;align-items:center;justify-content:center;margin-left:-14px;border:3px solid #fff;}
.ttp-qrs-sub{font-weight:700;color:#2f5bff !important;}
.ttp-qrs-note{font-size:12.5px;color:#8a93a8;line-height:1.45;}
.ttp-qrs-ok{width:58px;height:58px;border-radius:50%;background:#e7f8ee;display:flex;align-items:center;justify-content:center;margin-top:6px;}
.ttp-qrs-chip{font:800 11.5px/1 'Manrope',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#16a34a;background:#e7f8ee;border-radius:999px;padding:6px 12px;}
.ttp-qr-pill{display:inline-flex;align-items:center;gap:8px;background:#eef3ff;color:#2f5bff;border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:700;margin-bottom:14px;}
@media (max-width:640px){
  .ttp-qrm{padding:0;}
  .ttp-qrm-in{max-width:none;height:100%;border-radius:0;justify-content:center;padding:calc(24px + env(safe-area-inset-top,0px)) 20px calc(20px + env(safe-area-inset-bottom,0px));}
  .ttp-qrm-box{width:min(280px,100%);}
  .ttp-qrs{align-items:flex-end;padding:0;}
  .ttp-qrs-in{max-width:none;border-radius:26px 26px 0 0;padding-bottom:calc(22px + env(safe-area-inset-bottom,0px));}
}
@media (prefers-reduced-motion:reduce){.ttp-qrm-bar i{transition:none;}}


/* ttp-prof: eigen profielfoto klikbaar met cameraatje (knop Foto wijzigen vervalt) */
.ttp-av-edit{position:relative;display:block;cursor:pointer;text-decoration:none !important;}
.ttp-av-edit img{transition:filter .15s;}
.ttp-av-edit:hover img{filter:brightness(.9);}
.ttp-av-cam{position:absolute;right:4%;bottom:4%;width:34px;height:34px;border-radius:50%;background:#fff;color:#2f5bff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(12,20,48,.25);border:2px solid #fff;transition:transform .15s,background .15s,color .15s;}
.ttp-av-edit:hover .ttp-av-cam{transform:scale(1.08);background:#2f5bff;color:#fff;}
.ttp-av-edit:focus-visible{outline:3px solid #2f5bff;outline-offset:3px;border-radius:50%;}
.ttp-av-edit.ttp-noav .ttp-av-cam{background:#2f5bff;color:#fff;}
.ttp-av-add{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);white-space:nowrap;background:#0c1430;color:#fff;font-size:12.5px;font-weight:700;border-radius:999px;padding:6px 12px;opacity:0;pointer-events:none;transition:opacity .15s;z-index:3;}
.ttp-av-edit:hover .ttp-av-add,.ttp-av-edit:focus-visible .ttp-av-add{opacity:1;}
@media (max-width:640px){.ttp-av-cam{width:30px;height:30px;}}

.ttp-avatar.ttp-av-edit{overflow:visible !important;}
.ttp-av-edit > img{border-radius:50%;}
.ttp-av-edit .ttp-av-cam{color:#2f5bff !important;}
.ttp-av-edit:hover .ttp-av-cam,.ttp-av-edit.ttp-noav .ttp-av-cam{color:#fff !important;}


/* ===== TTP v29: highlight-video op profiel, in de ledenlijst en in het formulier ===== */
.ttp-video h2{margin-bottom:12px;}
.ttp-vid{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#0c1430,#152052);border-radius:14px;padding:16px 18px;text-decoration:none !important;color:#fff !important;transition:transform .15s,box-shadow .15s;}
.ttp-vid:hover{transform:translateY(-1px);box-shadow:0 14px 30px -18px rgba(12,20,48,.7);}
.ttp-vid-play{flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:#2f5bff;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px -8px rgba(47,91,255,.8);}
.ttp-vid-play svg{width:20px;height:20px;margin-left:2px;}
.ttp-vid-tx{display:flex;flex-direction:column;gap:2px;min-width:0;}
.ttp-vid-tx b{font-size:16px;font-weight:800;color:#fff;}
.ttp-vid-tx i{font-style:normal;font-size:13px;color:#aebbe8;}
.ttp-vid-ratio{position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#0c1430;}
.ttp-vid-ratio iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.ttp-vid-note{margin:8px 2px 0;font-size:12.5px;color:#7a839b;}
.ttp-vid-note a{color:#2f5bff;font-weight:700;}
.ttp-chip .ttp-chip-vid,.ttp-chip-vid{display:inline-flex;align-items:center;gap:5px;font-weight:700;}
.ttp-chip-vid svg{width:12px;height:12px;}
.ttp-r-vid{display:inline-flex;align-items:center;gap:5px;background:#eef3ff;color:#2f5bff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;white-space:nowrap;}
.editfield.has-err input[type=text]{border-color:#c62839 !important;box-shadow:0 0 0 3px rgba(198,40,57,.12) !important;}
@media(max-width:640px){.ttp-vid{padding:14px;}.ttp-r-vid{display:none;}}


/* ===== TTP v30: foto niet afgesneden op Gegevens en Profielfoto (geen omslag, dus geen negatieve marge) ===== */
body.ttp-prof.ttp-edit .ttp-hero .ttp-avatar,body.ttp-prof.ttp-edit-page .ttp-hero .ttp-avatar{width:84px;height:84px;margin-top:0;border-width:3px;box-shadow:none;}
body.ttp-prof.ttp-edit .ttp-hero .ttp-hero-body,body.ttp-prof.ttp-edit-page .ttp-hero .ttp-hero-body{align-items:center;}


/* ttp-kansen: pagina Kansen */
body.ttp-kansen-page{background:#f3f6fb !important;}
body.ttp-kansen-page .wp-block-post-title{display:none !important;}
body.ttp-kansen-page main .is-layout-constrained > *{max-width:none !important;}
#ttp-kansen{max-width:1180px;margin:0 auto;padding:28px 16px 64px;font-family:'Manrope',sans-serif;color:#0c1430;box-sizing:border-box;}
.ttp-k-load{color:#5c657c;font-size:15px;padding:40px 0;text-align:center;}
.ttp-k-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;}
.ttp-k-head h1{margin:0;font-size:32px;font-weight:800;letter-spacing:-.01em;}
.ttp-k-head p{margin:6px 0 0;color:#5c657c;font-size:15px;}
.ttp-k-b{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px !important;padding:12px 18px !important;font:800 14px/1 'Manrope',sans-serif !important;border:1.5px solid #dfe6f5 !important;background:#fff !important;color:#2f5bff !important;cursor:pointer;white-space:nowrap;text-decoration:none !important;box-shadow:none !important;}
.ttp-k-b.is-p{background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border-color:transparent !important;box-shadow:0 12px 24px -12px rgba(47,91,255,.6) !important;}
.ttp-k-b.is-d{color:#b42318 !important;}
.ttp-k-b[disabled]{opacity:.5;cursor:not-allowed;}
.ttp-k-b:focus-visible,.ttp-k-chip:focus-visible,.ttp-k-seg button:focus-visible,.ttp-k-card:focus-visible{outline:2px solid #2f5bff;outline-offset:2px;}
.ttp-k-seg{display:inline-flex;background:#e6ebf5;border-radius:999px;padding:4px;margin-top:20px;max-width:100%;overflow-x:auto;}
.ttp-k-seg button{border:0 !important;background:none !important;border-radius:999px !important;padding:9px 15px !important;font:700 13.5px/1 'Manrope',sans-serif !important;color:#5c657c !important;cursor:pointer;white-space:nowrap;box-shadow:none !important;}
.ttp-k-seg button.on{background:#fff !important;color:#0c1430 !important;box-shadow:0 2px 6px rgba(12,20,48,.12) !important;}
.ttp-k-fbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.ttp-k-chip{border:1.5px solid #dfe6f5 !important;background:#fff !important;border-radius:999px !important;padding:8px 13px !important;font:700 13px/1 'Manrope',sans-serif !important;color:#0c1430 !important;cursor:pointer;box-shadow:none !important;}
.ttp-k-chip.on{border-color:#2f5bff !important;background:#eef3ff !important;color:#2f5bff !important;}
.ttp-k-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;margin-top:18px;align-items:start;}
.ttp-k-main{display:flex;flex-direction:column;gap:10px;min-width:0;}
.ttp-k-count{font-size:13px;font-weight:700;color:#5c657c;}
.ttp-k-list{display:flex;flex-direction:column;gap:12px;}
.ttp-k-card{background:#fff;border:1px solid #e3e9f5;border-radius:16px;padding:16px 18px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;box-shadow:0 8px 20px -18px rgba(12,20,48,.4);text-decoration:none !important;color:#0c1430 !important;transition:border-color .15s,box-shadow .15s;}
.ttp-k-card:hover{border-color:#b9c9f5;box-shadow:0 12px 26px -18px rgba(47,91,255,.5);}
.ttp-k-lg{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font:800 16px/1 'Manrope',sans-serif;color:#fff;flex:none;}
.ttp-k-lg.is-p{border-radius:50%;}
.ttp-k-t{min-width:0;display:flex;flex-direction:column;gap:5px;}
.ttp-k-r1{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.ttp-k-r1 strong{font-size:16.5px;font-weight:800;}
.ttp-k-pill{font:800 10.5px/1 'Manrope',sans-serif;letter-spacing:.07em;text-transform:uppercase;border-radius:999px;padding:5px 9px;}
.ttp-k-pill.is-g{background:#eef3ff;color:#2f5bff;}
.ttp-k-pill.is-b{background:#e7f8ee;color:#16a34a;}
.ttp-k-pill.is-m{background:#fff4e0;color:#b45309;}
.ttp-k-pill.is-o{background:#f1f4fa;color:#5c657c;}
.ttp-k-who{font-size:13.5px;color:#5c657c;}
.ttp-k-meta{display:flex;gap:6px;flex-wrap:wrap;}
.ttp-k-meta span{font-size:12px;font-weight:700;color:#26304f;background:#f1f4fa;border-radius:8px;padding:5px 8px;}
.ttp-k-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;}
.ttp-k-when{font-size:12px;color:#8a93a8;white-space:nowrap;}
.ttp-k-btn{border-radius:999px;padding:8px 14px;font-size:12.5px;font-weight:800;color:#2f5bff;border:1.5px solid #dfe6f5;}
.ttp-k-empty{background:#fff;border:1px dashed #cdd6ea;border-radius:16px;padding:28px;text-align:center;color:#5c657c;font-size:14.5px;line-height:1.5;}
.ttp-k-aside{display:flex;flex-direction:column;gap:14px;}
.ttp-k-box{background:#fff;border:1px solid #e3e9f5;border-radius:16px;padding:16px;}
.ttp-k-box h4{margin:0 0 6px;font-size:15px;font-weight:800;}
.ttp-k-box p{margin:0;font-size:13.5px;color:#5c657c;line-height:1.5;}
.ttp-k-match,.ttp-k-mine{display:flex;flex-direction:column;gap:10px;margin-top:10px;}
.ttp-k-match a,.ttp-k-mine a{display:flex;flex-direction:column;gap:2px;text-decoration:none !important;color:#0c1430 !important;border-left:3px solid #2f5bff;padding:2px 0 2px 10px;}
.ttp-k-mine a{border-left-color:#16a34a;}
.ttp-k-match b,.ttp-k-mine b{font-size:13.5px;}
.ttp-k-match span,.ttp-k-mine span{font-size:12px;color:#5c657c;}
.ttp-k-box.is-post{background:linear-gradient(160deg,#2a4fd1,#15277a 60%,#0c1430);color:#fff;border:0;}
.ttp-k-box.is-post p{color:#dfe7ff;}
.ttp-k-box.is-post .ttp-k-b{margin-top:12px;width:100%;box-sizing:border-box;}
.ttp-k-back{display:inline-block;margin-bottom:14px;color:#2f5bff !important;font-weight:800;text-decoration:none !important;font-size:14px;}
.ttp-k-det{background:#fff;border:1px solid #e3e9f5;border-radius:20px;overflow:hidden;max-width:760px;box-shadow:0 12px 30px -24px rgba(12,20,48,.5);}
.ttp-k-dh{background:linear-gradient(160deg,#2a4fd1,#15277a 60%,#0c1430);color:#fff;padding:24px;display:flex;gap:16px;align-items:center;}
.ttp-k-dh .ttp-k-lg{width:60px;height:60px;font-size:20px;border:3px solid rgba(255,255,255,.35);}
.ttp-k-dh h1{margin:8px 0 4px;font-size:26px;line-height:1.2;font-weight:800;color:#fff;}
.ttp-k-dh span{font-size:13.5px;color:#c9d6ff;font-weight:600;}
.ttp-k-dh .ttp-k-pill{background:rgba(255,255,255,.16);color:#fff;}
.ttp-k-dbody{padding:22px 24px 24px;display:flex;flex-direction:column;gap:18px;}
.ttp-k-fx{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;}
.ttp-k-fx div{background:#f6f8fc;border-radius:12px;padding:10px 12px;}
.ttp-k-fx span{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2f5bff;margin-bottom:3px;}
.ttp-k-fx b{font-size:14.5px;}
.ttp-k-txt{font-size:15.5px;line-height:1.6;color:#26304f;}
.ttp-k-by{display:flex;align-items:center;gap:12px;text-decoration:none !important;color:#0c1430 !important;border:1px solid #e3e9f5;border-radius:14px;padding:12px;}
.ttp-k-by img{width:44px;height:44px;border-radius:50%;object-fit:cover;}
.ttp-k-by span{display:flex;flex-direction:column;font-size:13px;color:#5c657c;}
.ttp-k-by b{font-size:15px;color:#0c1430;}
.ttp-k-act{border-top:1px solid #eef1f7;padding-top:18px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
.ttp-k-act h3{margin:0;font-size:18px;font-weight:800;}
.ttp-k-act p{margin:0;font-size:14.5px;color:#5c657c;}
.ttp-k-act textarea,.ttp-k-in{width:100%;box-sizing:border-box;border:1.5px solid #dfe6f5 !important;border-radius:12px !important;padding:12px 14px !important;font:500 15px/1.5 'Manrope',sans-serif;color:#0c1430;background:#fff !important;}
.ttp-k-act textarea:focus,.ttp-k-in:focus{outline:none;border-color:#2f5bff !important;box-shadow:0 0 0 4px rgba(47,91,255,.13);}
.ttp-k-lab{font-size:12.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#2f5bff;display:block;}
.ttp-k-small{font-size:13px !important;color:#8a93a8 !important;}
.ttp-k-msgout{color:#b42318 !important;font-size:14px;}
.ttp-k-msgout:empty{display:none;}
.ttp-k-note{background:#fff4e0;color:#8a4b06;border-radius:12px;padding:10px 14px;font-size:14px;font-weight:700;}
.ttp-k-ok{display:flex;flex-direction:column;gap:8px;align-items:flex-start;background:#e7f8ee;border-radius:14px;padding:14px 16px;width:100%;box-sizing:border-box;}
.ttp-k-ok b{color:#0b6b3a;font-size:15.5px;}
.ttp-k-ok span{font-size:14px;color:#26304f;}
.ttp-k-resp{display:flex;flex-wrap:wrap;gap:10px;}
.ttp-k-resp a{display:flex;align-items:center;gap:8px;border:1px solid #e3e9f5;border-radius:999px;padding:5px 12px 5px 5px;text-decoration:none !important;color:#0c1430 !important;font-weight:700;font-size:13.5px;}
.ttp-k-resp img{width:30px;height:30px;border-radius:50%;object-fit:cover;}
.ttp-k-row{display:flex;gap:10px;flex-wrap:wrap;}
.ttp-k-link{background:none !important;border:0 !important;color:#8a93a8 !important;font-size:13px !important;text-decoration:underline;cursor:pointer;padding:0 !important;align-self:flex-start;box-shadow:none !important;}
body.ttp-k-open{overflow:hidden;}
.ttp-k-modal{position:fixed;inset:0;z-index:100000;background:rgba(8,12,30,.6);display:flex;align-items:center;justify-content:center;padding:16px;font-family:'Manrope',sans-serif;}
.ttp-k-sheet{position:relative;background:#fff;color:#0c1430;border-radius:22px;width:100%;max-width:520px;max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:24px 22px 20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);}
.ttp-k-sheet h2{margin:0;font-size:22px;font-weight:800;}
.ttp-k-sheet > p{margin:0;font-size:15px;color:#5c657c;line-height:1.5;}
.ttp-k-x{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;border:0 !important;background:#eef1f7 !important;color:#0c1430 !important;font-size:22px;line-height:1;cursor:pointer;padding:0 !important;box-shadow:none !important;}
.ttp-k-prog{display:flex;gap:6px;}
.ttp-k-prog i{flex:1;height:5px;border-radius:5px;background:#dfe6f5;}
.ttp-k-prog i.on{background:#2f5bff;}
.ttp-k-form{display:flex;flex-direction:column;gap:9px;}
.ttp-k-form .ttp-k-lab{margin-top:6px;}
.ttp-k-seg2{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;}
.ttp-k-seg2 button{border:1.5px solid #dfe6f5 !important;background:#fff !important;border-radius:12px !important;padding:12px 10px !important;font:800 14px/1.2 'Manrope',sans-serif !important;color:#0c1430 !important;cursor:pointer;box-shadow:none !important;}
.ttp-k-seg2 button.on{border-color:#2f5bff !important;background:#eef3ff !important;color:#2f5bff !important;}
.ttp-k-warn{margin:4px 0 0;background:#fff4e0;color:#8a4b06;border-radius:12px;padding:10px 12px;font-size:13.5px;line-height:1.45;}
.ttp-k-err{margin:0;color:#b42318;font-size:14px;}
.ttp-k-err:empty{display:none;}
.ttp-k-sheet .ttp-k-row{justify-content:flex-end;}
.ttp-k-ac{position:relative;}
.ttp-k-acl{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:5;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #dfe6f5;border-radius:12px;box-shadow:0 16px 30px -14px rgba(12,20,48,.3);}
.ttp-k-acl li{display:flex;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:14px;margin:0;}
.ttp-k-acl li:hover{background:#eef3ff;}
.ttp-k-acl li span{color:#5c657c;font-size:12.5px;}
.ttp-k-prev .ttp-k-card{pointer-events:none;box-shadow:none;}
@media (max-width:860px){
  .ttp-k-grid{grid-template-columns:1fr;}
  .ttp-k-card{grid-template-columns:40px minmax(0,1fr);padding:14px;}
  .ttp-k-lg{width:40px;height:40px;font-size:14px;}
  .ttp-k-side{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;}
  .ttp-k-head h1{font-size:26px;}
  .ttp-k-dh{padding:18px;}
  .ttp-k-dh h1{font-size:21px;}
  .ttp-k-dbody{padding:18px;}
  .ttp-k-modal{align-items:flex-end;padding:0;}
  .ttp-k-sheet{max-width:none;border-radius:22px 22px 0 0;max-height:92dvh;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));}
}

body.ttp-kansen-page main{margin-top:0 !important;padding-top:0 !important;}
body.ttp-kansen-page main > .wp-block-group{padding-top:0 !important;margin-top:0 !important;}
body.ttp-kansen-page .entry-content,body.ttp-kansen-page .wp-block-post-content{margin-top:0 !important;}


/* ttp-kansen v2: overzicht in de opbouw van Leden */
.ttp-k-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.ttp-k-search{display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #dfe6f5;border-radius:999px;padding:0 16px;min-width:300px;color:#8a93a8;cursor:text;}
.ttp-k-search input{border:0 !important;outline:0;background:transparent !important;padding:12px 0 !important;font:500 14px/1.2 'Manrope',sans-serif;color:#0c1430;width:100%;box-shadow:none !important;}
.ttp-k-search:focus-within{border-color:#2f5bff;box-shadow:0 0 0 4px rgba(47,91,255,.12);}
.ttp-k-fb{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:20px;}
.ttp-k-ddw{position:relative;}
.ttp-k-dd{display:inline-flex !important;align-items:center;gap:6px;background:#fff !important;border:1.5px solid #dfe6f5 !important;border-radius:999px !important;padding:9px 14px !important;font:700 13px/1 'Manrope',sans-serif !important;color:#0c1430 !important;cursor:pointer;box-shadow:none !important;}
.ttp-k-dd span{font-size:10px;opacity:.6;}
.ttp-k-dd.on{border-color:#2f5bff !important;background:#eef3ff !important;color:#2f5bff !important;}
.ttp-k-dd:focus-visible,.ttp-k-tg:focus-visible,.ttp-k-wis:focus-visible,.ttp-k-matchbar:focus-visible{outline:2px solid #2f5bff;outline-offset:2px;}
.ttp-k-pop{position:absolute;left:0;top:calc(100% + 6px);z-index:40;min-width:220px;background:#fff;border:1px solid #dfe6f5;border-radius:14px;box-shadow:0 18px 40px -14px rgba(12,20,48,.3);padding:6px;display:flex;flex-direction:column;max-height:320px;overflow:auto;}
.ttp-k-pop button{text-align:left;background:none !important;border:0 !important;border-radius:9px !important;padding:10px 12px !important;font:600 14px/1.2 'Manrope',sans-serif !important;color:#0c1430 !important;cursor:pointer;box-shadow:none !important;}
.ttp-k-pop button:hover{background:#f1f4fa !important;}
.ttp-k-pop button.on{background:#eef3ff !important;color:#2f5bff !important;font-weight:800 !important;}
.ttp-k-pop .ttp-k-pop-clr{border-top:1px solid #eef1f7 !important;border-radius:0 0 9px 9px !important;color:#5c657c !important;margin-top:4px;}
.ttp-k-tg{display:inline-flex !important;align-items:center;gap:8px;background:none !important;border:0 !important;padding:6px 4px !important;font:700 13px/1 'Manrope',sans-serif !important;color:#26304f !important;cursor:pointer;box-shadow:none !important;}
.ttp-k-tg i{width:34px;height:20px;border-radius:999px;background:#cfd8ea;position:relative;transition:background .15s;flex:none;}
.ttp-k-tg i::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .15s;}
.ttp-k-tg.on i{background:#2f5bff;}
.ttp-k-tg.on i::after{left:17px;}
.ttp-k-wis{background:none !important;border:0 !important;color:#2f5bff !important;font:800 13px/1 'Manrope',sans-serif !important;cursor:pointer;padding:6px 4px !important;box-shadow:none !important;}
.ttp-k-matchbar{display:flex !important;width:100%;justify-content:space-between;align-items:center;gap:12px;background:#fff4e0 !important;border:1px solid #f7dcaa !important;border-radius:14px !important;padding:12px 16px !important;font:500 14px/1.45 'Manrope',sans-serif !important;color:#6b3d05 !important;cursor:pointer;margin-top:16px;text-align:left;box-shadow:none !important;}
.ttp-k-matchbar b{color:#8a4b06;}
.ttp-k-ml{color:#8a4b06;font-weight:800;white-space:nowrap;}
.ttp-k-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0 10px;}
.ttp-k-bar b{font-size:14px;}
.ttp-k-bar span{font-size:13px;color:#5c657c;}
.ttp-k-sort{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#5c657c;}
.ttp-k-sort select{border:1.5px solid #dfe6f5 !important;border-radius:10px !important;padding:8px 12px !important;font:700 13px/1.2 'Manrope',sans-serif;color:#0c1430;background:#fff;}
.ttp-k-card.ttp-k-rw{grid-template-columns:minmax(0,1.7fr) repeat(4,minmax(0,.72fr)) 128px 14px;padding:14px 18px;gap:14px;}
.ttp-k-card.ttp-k-rw.is-m{box-shadow:inset 3px 0 0 #f59e0b,0 8px 20px -18px rgba(12,20,48,.4);}
.ttp-k-who2{display:flex;gap:12px;align-items:center;min-width:0;}
img.ttp-k-lg{object-fit:cover;background:#e8edf7;}
.ttp-k-wt{min-width:0;display:flex;flex-direction:column;gap:4px;}
.ttp-k-wt strong{font-size:15.5px;font-weight:800;}
.ttp-k-sub{font-size:13px;color:#5c657c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ttp-k-pill.is-n{background:#0c1430;color:#fff;}
.ttp-k-c{display:flex;flex-direction:column;gap:3px;min-width:0;}
.ttp-k-c span{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#8a93a8;}
.ttp-k-c b{font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ttp-k-rxw{display:flex;flex-direction:column;align-items:flex-end;gap:4px;}
.ttp-k-rx{font-size:12.5px;font-weight:800;color:#2f5bff;background:#eef3ff;border-radius:999px;padding:5px 10px;white-space:nowrap;}
.ttp-k-rx.is-z{background:#f1f4fa;color:#5c657c;}
.ttp-k-when.is-u{color:#b42318;font-weight:800;}
.ttp-k-chev{color:#b3bcd0;font-size:20px;line-height:1;}
.ttp-k-empty2{background:#fff;border:1px solid #e3e9f5;border-radius:18px;padding:34px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;}
.ttp-k-eic{width:64px;height:64px;border-radius:20px;background:#eef3ff;display:flex;align-items:center;justify-content:center;}
.ttp-k-empty2 h3{margin:4px 0 0;font-size:20px;font-weight:800;}
.ttp-k-empty2 p{margin:0;max-width:52ch;color:#5c657c;font-size:14.5px;line-height:1.55;}
.ttp-k-ex{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:4px;}
.ttp-k-ex span{background:#f1f4fa;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:700;color:#26304f;}
.ttp-k-empty2 .ttp-k-row{justify-content:center;margin-top:8px;}
.ttp-k-fab{display:none !important;}
@media (max-width:980px){
  .ttp-k-card.ttp-k-rw{grid-template-columns:minmax(0,1fr) auto;row-gap:10px;}
  .ttp-k-card.ttp-k-rw .ttp-k-c:nth-of-type(2),.ttp-k-card.ttp-k-rw .ttp-k-c:nth-of-type(4){display:none;}
  .ttp-k-card.ttp-k-rw .ttp-k-who2{grid-column:1 / -1;}
  .ttp-k-card.ttp-k-rw .ttp-k-chev{display:none;}
  .ttp-k-card.ttp-k-rw .ttp-k-rxw{grid-column:1 / -1;flex-direction:row;justify-content:space-between;align-items:center;}
  .ttp-k-card.ttp-k-rw .ttp-k-c{background:#f6f8fc;border-radius:8px;padding:7px 9px;}
  .ttp-k-search{min-width:0;flex:1 1 100%;order:-1;}
  .ttp-k-tools{width:100%;}
  .ttp-k-tools > .ttp-k-b{display:none !important;}
  .ttp-k-fb{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;}
  .ttp-k-fb > *{flex:none;}
  .ttp-k-fb{scrollbar-width:none;}
  .ttp-k-fb::-webkit-scrollbar{display:none;}
  .ttp-k-matchbar{flex-direction:column;align-items:flex-start !important;}
  .ttp-k-pop{position:fixed;left:16px;right:16px;top:auto;bottom:16px;max-height:60vh;}
  .ttp-k-fab{display:inline-flex !important;position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:30;border-radius:999px !important;padding:14px 18px !important;background:linear-gradient(135deg,#2f5bff,#6d94ff) !important;color:#fff !important;border:0 !important;font:800 14px/1 'Manrope',sans-serif !important;box-shadow:0 14px 28px -10px rgba(47,91,255,.7) !important;cursor:pointer;}
}

/* iPhone zoomt in bij velden onder 16px: op mobiel alle Kansen-velden 16px */
@media (max-width:980px){.ttp-k-search input,.ttp-k-sort select,.ttp-k-in,.ttp-k-act textarea,.ttp-k-sheet select,.ttp-k-sheet input,.ttp-k-sheet textarea{font-size:16px !important;}}


/* ===== TTP v31: melden, account verwijderen en dialoogvensters ===== */
.ttp-mo{position:fixed;inset:0;z-index:100000;background:rgba(12,20,48,.55);display:flex;align-items:center;justify-content:center;padding:16px;}
.ttp-mo-box{background:#fff;border-radius:20px;padding:26px 26px 22px;width:100%;max-width:460px;max-height:92vh;overflow:auto;box-shadow:0 30px 80px -30px rgba(12,20,48,.6);font-family:inherit;color:#0c1430;}
.ttp-mo-box h2{margin:0 0 6px;font-size:22px;font-weight:800;}
.ttp-mo-sub{margin:0 0 16px;color:#5c657c;font-size:14.5px;line-height:1.55;}
.ttp-mo-opts{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;}
.ttp-mo-opt{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1.5px solid #e3e9f7;border-radius:12px;cursor:pointer;font-size:14.5px;line-height:1.4;}
.ttp-mo-opt:has(input:checked){border-color:#2f5bff;background:#f4f7ff;}
.ttp-mo-opt input{margin-top:3px;}
.ttp-mo-l{display:block;margin:12px 0 6px;font-size:13px;font-weight:700;}
.ttp-mo-box textarea,.ttp-mo-box input[type=password],.ttp-mo-box input[type=text]{width:100%;box-sizing:border-box;border:1.5px solid #dfe5f5;border-radius:12px;padding:11px 14px;font-size:15px;font-family:inherit;background:#fff;}
.ttp-mo-box textarea:focus,.ttp-mo-box input:focus{outline:none;border-color:#2f5bff;box-shadow:0 0 0 4px rgba(47,91,255,.12);}
.ttp-mo-msg{min-height:20px;margin:10px 0 0;color:#c62839;font-size:13.5px;font-weight:700;}
.ttp-mo-act{display:flex;gap:10px;justify-content:flex-end;margin-top:14px;}
.ttp-mo-act button{border-radius:999px !important;padding:11px 22px !important;font-size:14.5px !important;font-weight:800 !important;cursor:pointer;font-family:inherit !important;min-height:0 !important;}
.ttp-mo-cancel{background:#fff !important;color:#5c657c !important;border:1.5px solid #dfe5f5 !important;}
.ttp-mo-go{background:#2f5bff !important;color:#fff !important;border:0 !important;}
.ttp-mo-go:disabled{opacity:.6;cursor:default;}
.ttp-mo-danger{background:#c62839 !important;}
.ttp-rep-foot{margin:22px 0 4px;text-align:center;}
.ttp-rep-link{background:none !important;border:0 !important;box-shadow:none !important;color:#7a839b !important;font-size:13px !important;font-weight:600 !important;text-decoration:underline;cursor:pointer;padding:6px !important;min-height:0 !important;font-family:inherit !important;}
.ttp-rep-link:hover{color:#c62839 !important;}
.ttp-rep-btn{margin-left:auto;background:none !important;border:0 !important;box-shadow:none !important;color:#7a839b !important;font-size:12.5px !important;font-weight:600 !important;text-decoration:underline;cursor:pointer;padding:6px 8px !important;min-height:0 !important;font-family:inherit !important;}
.ttp-rep-btn:hover{color:#c62839 !important;}
.ttp-danger{max-width:680px;margin:24px auto 40px;width:calc(100% - 32px);background:#fff;border:1px solid #f3d3d7;border-radius:16px;padding:22px 26px;}
.ttp-danger h2{margin:0 0 6px;font-size:18px;font-weight:800;color:#0c1430;}
.ttp-danger p{margin:0 0 14px;color:#5c657c;font-size:14.5px;line-height:1.55;}
.ttp-danger-btn{background:#fff !important;color:#c62839 !important;border:1.5px solid #c62839 !important;border-radius:999px !important;padding:10px 22px !important;font-weight:800 !important;font-size:14.5px !important;cursor:pointer;min-height:0 !important;font-family:inherit !important;box-shadow:none !important;}
.ttp-danger-btn:hover{background:#c62839 !important;color:#fff !important;}

/* Instellingen via tandwiel op eigen profiel (knop uit de menubalk) */
.ttp-hero{position:relative;}
.ttp-hero-set{position:absolute;top:14px;right:14px;z-index:3;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.94);color:#0c1430 !important;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px -6px rgba(12,20,48,.45);text-decoration:none !important;transition:background .15s,color .15s,transform .15s;}
.ttp-hero-set:hover{background:#2f5bff;color:#fff !important;transform:rotate(30deg);}
.ttp-hero-set:focus-visible{outline:3px solid #fff;outline-offset:2px;}
@media (max-width:640px){.ttp-hero-set{top:10px;right:10px;width:36px;height:36px;}}

/* Mobiele menubalk: label onder elk icoon */
@media (max-width:760px){
  body.logged-in .ttp-nav a.ttp-in{flex-direction:column;gap:4px;height:54px;}
  .ttp-nav .ttp-ic{width:24px;height:24px;}
  .ttp-nav a.ttp-in .ttp-lb{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:nowrap;font:700 10.5px/1 'Manrope',sans-serif;letter-spacing:.01em;}
  .ttp-bd{top:2px;}
  body.logged-in{padding-bottom:74px;}
}

/* Minimumleeftijd 12: melding bij geboortedatum */
.ttp-age-err{margin:8px 0 0;color:#b42318;font-size:13.5px;font-weight:700;line-height:1.45;}
.editfield.field_4.has-err select{border-color:#c62839 !important;box-shadow:0 0 0 3px rgba(198,40,57,.12) !important;}

/* Kansen: schakelaar meldingen en statusmelding */
.ttp-k-meld{display:inline-flex !important;align-items:center;gap:8px;background:none !important;border:0 !important;padding:6px 4px !important;font:700 13px/1 'Manrope',sans-serif !important;color:#26304f !important;cursor:pointer;box-shadow:none !important;margin-left:auto;}
.ttp-k-meld i{width:34px;height:20px;border-radius:999px;background:#cfd8ea;position:relative;flex:none;transition:background .15s;}
.ttp-k-meld i::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left .15s;}
.ttp-k-meld.on i{background:#2f5bff;}
.ttp-k-meld.on i::after{left:17px;}
.ttp-k-meld:focus-visible{outline:2px solid #2f5bff;outline-offset:2px;}
.ttp-k-notice{background:#e7f8ee;border:1px solid #bfe8cf;color:#0b6b3a;border-radius:14px;padding:12px 16px;font-size:14.5px;font-weight:700;margin:0 0 16px;}

.ttp-k-who-hint{margin:4px 0 0;font-size:13.5px;line-height:1.45;color:#26304f;background:#eef3ff;border-radius:10px;padding:9px 12px;}
.ttp-k-who-hint b{color:#2f5bff;}

/* ttp-prof: eigen avatar zonder foto gecentreerd (Android stond het logo scheef); profiel-tabs passen op smalle schermen */
.ttp-avatar.ttp-av-edit{display:flex !important;align-items:center;justify-content:center;}
@media (max-width:480px){body.ttp-prof:not(.ttp-prof-plain) #buddypress #subnav li a{padding:9px 14px !important;font-size:14px !important;}}

/* ttp-connect: knop Connectie maken in het ledenoverzicht (op mobiel alleen icoon) */
.ttp-r-conn{position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;font:700 13px 'Manrope',sans-serif;border-radius:999px;padding:6px 14px;border:1.5px solid #2f5bff;background:#2f5bff;color:#fff;cursor:pointer;white-space:nowrap;line-height:1.2;}
.ttp-r-conn:hover{background:#2449d8;border-color:#2449d8;}
.ttp-r-conn.is-busy{opacity:.6;cursor:wait;}
.ttp-r-conn.is-on{background:#e8f6ee;border-color:#e8f6ee;color:#0f6b45;cursor:default;}
.ttp-r-conn.is-wait{background:#f3f6fb;border-color:#f3f6fb;color:#5c657c;cursor:default;}
.ttp-r-conn:focus-visible{outline:2px solid #2f5bff;outline-offset:2px;}
body.ttp-dir2 .ttp-r-side{width:auto;min-width:210px;}
@media (min-width:721px){.ttp-r-conn{min-width:150px;justify-content:center;box-sizing:border-box;}}
.ttp-r-toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:#0c1430;color:#fff;font:600 14.5px 'Manrope',sans-serif;padding:12px 18px;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:100000;max-width:calc(100% - 32px);text-align:center;box-shadow:0 12px 30px -10px rgba(12,20,48,.5);}
.ttp-r-toast.on{opacity:1;transform:translate(-50%,0);}
@media (max-width:720px){
.ttp-r-conn{width:40px;height:40px;padding:0;justify-content:center;flex:none;}
.ttp-r-conn span{display:none;}
.ttp-r-conn svg{width:18px;height:18px;}
.ttp-r-side:has(.ttp-r-conn) .ttp-r-go{display:none;}
body.ttp-dir2 .ttp-r-side{min-width:0;}
}

/* ttp-kansen: oproep delen (deelknop, deelvenster met beeld) */
.ttp-k-sharerow{display:flex;margin:4px 0 2px;}
.ttp-k-sharerow .ttp-k-b{display:inline-flex;align-items:center;gap:8px;}
.ttp-k-shimg{background:#eef2f9;border-radius:14px;min-height:160px;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.ttp-k-shimg img{display:block;width:100%;max-height:46dvh;object-fit:contain;}
.ttp-k-shbtns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.ttp-k-shbtns .ttp-k-b{justify-content:center;text-align:center;text-decoration:none;}
.ttp-k-shbtns [data-sh="native"]{grid-column:1 / -1;}
.ttp-k-shbtns [hidden]{display:none !important;}

/* ttp-dir: video-icoontje op de profielfoto in het ledenoverzicht; rechterkolom vaste breedte zodat kolommen recht blijven */
.ttp-r-avw{position:relative;flex:none;}
.ttp-r-avvid{position:absolute;right:-3px;bottom:-3px;width:24px;height:24px;border-radius:50%;background:#2f5bff;color:#fff;border:2px solid #fff;display:flex;align-items:center;justify-content:center;box-sizing:border-box;box-shadow:0 2px 6px rgba(12,20,48,.25);}
.ttp-r-avvid svg{width:10px;height:10px;margin-left:1px;}
@media (min-width:901px){body.ttp-dir2 .ttp-r-side{width:380px;min-width:0;flex:none;justify-content:flex-end;}}

/* ttp-online: Online (groen) of Recent online (grijs), anders niets */
.ttp-online{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:#5c657c;}
.ttp-online.is-on{color:#15803d;}
.ttp-online.is-on::before{content:"";width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.18);}
.ttp-r-avon{position:absolute;left:1px;bottom:1px;width:14px;height:14px;border-radius:50%;background:#22c55e;border:2px solid #fff;box-sizing:border-box;}

/* ttp-prof: Gegevens-vakjes met lange tekst (bv. trainers) 2 x 2 in plaats van 4 naast elkaar */
.ttp-stats.ttp-stats-long{grid-template-columns:repeat(2,minmax(0,1fr));}
.ttp-stats.ttp-stats-long .ttp-stat:last-child:nth-child(odd){grid-column:1/-1;}
.ttp-stats-long .ttp-stat{padding:18px 16px;}
.ttp-stat-v{overflow-wrap:anywhere;hyphens:auto;text-wrap:balance;}

/* Vlaggetjes naast de naam in het ledenoverzicht (2026-09-30) */
.ttp-r-flag{display:inline-block;width:18px;height:13px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(12,20,48,.15);margin-left:7px;vertical-align:-1px;flex:none;}
.ttp-r-flag + .ttp-r-flag{margin-left:4px;}

/* ttp-dir: naam, positie en club elk op één regel (afgekort met …), vlaggetjes krimpen niet; bredere naamkolom */
.ttp-r-nl{flex-wrap:nowrap;max-width:100%;}
.ttp-r-link{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ttp-r-nl .ttp-r-flag,.ttp-r-nl .ttp-r-me{flex:none;}
.ttp-r-lead{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media (min-width:901px){body.ttp-dir2 .ttp-r-main{flex:0 0 260px;min-width:0;}}
