/* LCOC Members Frontend */
.lcocmm-wrap{max-width:1200px;margin:0 auto;padding:20px}
.lcocmm-grid-cards{display:grid;grid-template-columns:repeat(3, minmax(0,1fr));gap:18px}
@media(max-width: 980px){.lcocmm-grid-cards{grid-template-columns:repeat(2, minmax(0,1fr));}}
@media(max-width: 640px){.lcocmm-grid-cards{grid-template-columns:1fr;}}
.lcocmm-card{border:1px solid #e0e0e0;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04);display:flex;flex-direction:column;min-height:320px}
.lcocmm-card-media{padding:14px;display:flex;align-items:center;justify-content:center;min-height:140px}
.lcocmm-card-media img{max-width:100%;max-height:120px;width:auto;height:auto;object-fit:contain}
.lcocmm-card-body{padding:14px 14px 16px 14px;display:flex;flex-direction:column;gap:10px;flex:1}
.lcocmm-card-title{font-size:18px;line-height:1.2;margin:0}
.lcocmm-card-title a{text-decoration:none}
.lcocmm-card-year{font-size:13px;color:#555}
.lcocmm-card-excerpt{font-size:14px;color:#333;margin:0}
.lcocmm-card-actions{margin-top:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
/* Button style (blue + hover) matching "Chamber Places" feel */
.lcocmm-btn{display:inline-block;padding:10px 14px;border-radius:10px;background:#1e73be;color:#fff;text-decoration:none;font-weight:600;line-height:1}
.lcocmm-btn:hover{filter:brightness(1.08);color:#fff}
.lcocmm-link{font-weight:600;text-decoration:none}
.lcocmm-link:hover{text-decoration:underline}
.lcocmm-pagination{display:flex;gap:8px;justify-content:center;margin:22px 0}
.lcocmm-pagination a, .lcocmm-pagination span{padding:8px 12px;border:1px solid #ddd;border-radius:10px;text-decoration:none}
.lcocmm-pagination .current{background:#f3f4f6;font-weight:700}
/* Single */
.lcocmm-back{margin-bottom:12px}
.lcocmm-back-link{text-decoration:none;font-weight:600}
.lcocmm-single-grid{display:grid;grid-template-columns:4fr 1fr;gap:22px}
@media(max-width: 900px){.lcocmm-single-grid{grid-template-columns:1fr;}}
.lcocmm-single-title{margin:0 0 10px 0}
.lcocmm-single-media{margin:10px 0 14px 0}
.lcocmm-single-image{max-width:100%;height:auto;border-radius:14px}
.lcocmm-single-side{border:1px solid #e0e0e0;border-radius:14px;padding:14px;background:#fff}
.lcocmm-side-section{margin-bottom:16px}
.lcocmm-side-section h3{margin:0 0 10px 0;font-size:15px}
.lcocmm-side-section dl{margin:0}
.lcocmm-side-section dt{font-weight:700;font-size:13px;margin-top:10px}
.lcocmm-side-section dd{margin:4px 0 0 0;font-size:13px}

/* Column overrides */
.lcocmm-grid-cards.lcocmm-cols-1{grid-template-columns:1fr}
.lcocmm-grid-cards.lcocmm-cols-2{grid-template-columns:repeat(2, minmax(0,1fr));}
.lcocmm-grid-cards.lcocmm-cols-3{grid-template-columns:repeat(3, minmax(0,1fr));}
.lcocmm-grid-cards.lcocmm-cols-4{grid-template-columns:repeat(4, minmax(0,1fr));}
@media(max-width: 980px){.lcocmm-grid-cards.lcocmm-cols-4{grid-template-columns:repeat(2, minmax(0,1fr));}}
@media(max-width: 640px){.lcocmm-grid-cards.lcocmm-cols-2,.lcocmm-grid-cards.lcocmm-cols-3,.lcocmm-grid-cards.lcocmm-cols-4{grid-template-columns:1fr;}}

.lcocmm-card{position:relative}
.lcocmm-badge{position:absolute;top:12px;left:12px;background:#111827;color:#fff;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;}

.lcocmm-breadcrumbs{font-size:13px;color:#555;margin:0 0 12px 0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lcocmm-breadcrumbs a{text-decoration:none;font-weight:600}
.lcocmm-breadcrumbs a:hover{text-decoration:underline}
.lcocmm-breadcrumbs-sep{color:#9ca3af}

.lcocmm-side-images{display:flex;flex-direction:column;gap:12px;margin-bottom:14px}
.lcocmm-side-img{max-width:50%;height:auto;object-fit:contain}
.lcocmm-side-logo img, .lcocmm-side-portrait img{max-width:50%;height:auto}

.lcocmm-btn-sm{padding:8px 12px;border-radius:10px;font-size:13px}

.lcocmm-video-embed{margin:12px 0 18px 0}
.lcocmm-video-embed iframe{max-width:100%}

.lcocmm-single h1{font-size:28px;line-height:1.15}
.lcocmm-single-excerpt h2{font-size:16px;margin:14px 0 8px 0}

/* Single header title box */
.lcocmm-title-box{
  display:grid;
  grid-template-columns: 1fr 2fr;
  gap: 14px;
  align-items:center;
  border:1px solid #e0e0e0;
  border-radius:14px;
  padding:14px;
  background:#fff;
  margin: 0 0 14px 0;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.lcocmm-title-box-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:80px;
}
.lcocmm-title-logo-img{
  max-width:100%;
  max-height:90px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.lcocmm-title-box-name{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
/* Member name under portrait */
.lcocmm-member-name-under-portrait{
  font-size:14px;
  font-weight:700;
  margin-top:6px;
  text-align:center;
}
/* Slightly reduce detail font (dt/dd already small) while keeping member name larger */
.lcocmm-side-section dd{font-size:12.5px}

/* Sidebar portrait: fill the box without stretching */
.lcocmm-side-portrait-box{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.lcocmm-side-portrait-box img{
  width:100%;
  height:auto;
  max-width:100%;
  border-radius:12px;
  object-fit:cover;
  display:block;
}
/* Detail sections as boxed cards */
.lcocmm-side-section{
  border:1px solid #e0e0e0;
  border-radius:14px;
  padding:12px;
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
}
.lcocmm-side-section + .lcocmm-side-section{margin-top:12px}

/* --- Random Member Spotlight (shortcode: [lcoc_member_spotlight]) --- */
.lcocmm-spotlight{position:relative;width:100%;max-width:none}
.lcocmm-spotlight-slide{display:none;text-decoration:none;color:inherit}
.lcocmm-spotlight-slide{width:100%}
.lcocmm-spotlight-slide.is-active{display:block}
.lcocmm-spotlight-inner{
  display:flex;
  gap:12px;
  align-items:center;
  border:1px solid #e0e0e0;
  border-radius:14px;
  padding:12px;
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.04);
  width:100%;
  box-sizing:border-box;
}
.lcocmm-spotlight-media{width:64px;min-width:64px;height:64px;display:flex;align-items:center;justify-content:center}
.lcocmm-spotlight-img{max-width:64px;max-height:64px;width:auto;height:auto;object-fit:contain;border-radius:12px}
.lcocmm-spotlight-title{font-weight:800;font-size:18px;line-height:1.2}
.lcocmm-spotlight-sub{font-size:14px;color:#6b7280;line-height:1.25;margin-top:3px}
.lcocmm-spotlight-slide:hover .lcocmm-spotlight-inner{border-color:#c7c7c7}

/* --- Member Search (shortcode: [lcoc_member_search]) --- */
.lcocmm-member-search{width:100%}
.lcocmm-ms-form{margin:0}
.lcocmm-ms-row{display:flex;gap:10px;flex-wrap:wrap}
.lcocmm-ms-field{flex:1;min-width:200px}
.lcocmm-ms-search{position:relative}
.lcocmm-ms-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);opacity:.65}
.lcocmm-ms-q{width:100%;padding:12px 12px 12px 36px;border:1px solid #e0e0e0;border-radius:12px;font-size:16px;box-sizing:border-box}
.lcocmm-ms-radius-select{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:12px;font-size:16px;box-sizing:border-box;background:#fff}
.lcocmm-ms-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.lcocmm-ms-btn{cursor:pointer;border:1px solid #d6d6d6;background:#fff;border-radius:12px;padding:10px 14px;font-size:15px;font-weight:700}
.lcocmm-ms-btn:hover{border-color:#c7c7c7}
.lcocmm-ms-btn-secondary{opacity:.8}
.lcocmm-ms-status{margin-top:10px;font-size:14px;color:#6b7280}
.lcocmm-ms-filters{margin-top:10px;border:1px solid #e0e0e0;border-radius:12px;padding:10px;background:#fff}
.lcocmm-ms-filters summary{cursor:pointer;font-weight:800}
.lcocmm-ms-filters-inner{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}
.lcocmm-ms-filter-title{font-weight:800;margin-bottom:6px}
.lcocmm-ms-cats,.lcocmm-ms-fields{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow:auto;padding-right:6px}
.lcocmm-ms-cat,.lcocmm-ms-field-check{font-size:14px}
.lcocmm-ms-muted{font-size:14px;color:#6b7280}
.lcocmm-ms-results{margin-top:12px}
.lcocmm-ms-list{display:flex;flex-direction:column;gap:10px}
.lcocmm-ms-card{display:block;text-decoration:none;color:inherit;border:1px solid #e0e0e0;border-radius:14px;padding:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.lcocmm-ms-card:hover{border-color:#c7c7c7}
.lcocmm-ms-card-title{font-size:18px;font-weight:800;line-height:1.2}
.lcocmm-ms-card-sub{font-size:14px;color:#6b7280;margin-top:3px;line-height:1.25}
.lcocmm-ms-empty{font-size:15px;color:#6b7280}
@media(max-width:700px){.lcocmm-ms-filters-inner{grid-template-columns:1fr}}
