/**
 * CoP Mentorship. Consumes the hub's design tokens with fallbacks, so it stays
 * in step when the community's primary colour is changed in settings.
 */

.cop-mentorship{max-width:960px;margin:0 auto}
.cop-m-icon{flex:none;vertical-align:-.15em}

/* Head */
.cop-m-head h1{display:flex;align-items:center;gap:10px;font-size:26px;margin:0 0 6px;color:var(--cop-text,#2c3e50)}
.cop-m-head p{margin:0 0 22px;color:var(--cop-text-light,#7f8c8d);font-size:14px;max-width:62ch;line-height:1.6}

/* Sections */
.cop-m-section{background:var(--cop-bg-card,#fff);border:1px solid var(--cop-border,#e1e8ef);border-radius:var(--cop-radius-lg,16px);padding:22px;margin-bottom:20px}
.cop-m-section h2{display:flex;align-items:center;gap:8px;font-size:16px;margin:0 0 14px;color:var(--cop-text,#2c3e50)}
.cop-m-blurb{font-size:13px;color:var(--cop-text-light,#7f8c8d);margin:0 0 14px;line-height:1.6;max-width:70ch}

/* Cards */
.cop-m-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.cop-m-card{border:1px solid var(--cop-border,#e1e8ef);border-radius:var(--cop-radius,10px);padding:16px;background:var(--cop-bg-card,#fff);display:flex;flex-direction:column;gap:10px}
.cop-m-card-top{display:flex;align-items:center;gap:10px}
.cop-m-card-top strong{display:block;font-size:14px;color:var(--cop-text,#2c3e50)}
.cop-m-avatar{width:44px;height:44px;border-radius:50%;flex:none;object-fit:cover}
.cop-m-avatar-lg{width:72px;height:72px}
.cop-m-role{font-size:12px;color:var(--cop-text-muted,#95a5a6)}
.cop-m-score{margin-left:auto;font-size:15px;font-weight:800;color:var(--cop-primary,#75b83d);background:var(--cop-bg,#f4f6f9);border-radius:20px;padding:3px 11px;flex:none}
.cop-m-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.cop-m-room{font-size:12px;color:var(--cop-text-muted,#95a5a6)}
.cop-m-pending{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--cop-text-muted,#95a5a6)}

/* Reasons */
.cop-m-reasons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.cop-m-reasons li{display:flex;align-items:flex-start;gap:7px;font-size:12.5px;line-height:1.5;color:var(--cop-text-light,#7f8c8d)}
.cop-m-reasons li .cop-m-icon{color:var(--cop-success,#27ae60);margin-top:2px}

/* Chips */
.cop-m-chips{display:flex;flex-wrap:wrap;gap:6px}
.cop-m-chip{display:inline-block;font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:20px;background:var(--cop-bg,#f4f6f9);color:var(--cop-text-light,#7f8c8d);border:1px solid var(--cop-border-light,#f0f3f6)}
.cop-m-chip-pick{cursor:pointer;user-select:none;transition:all var(--cop-transition,.25s)}
.cop-m-chip-pick input{position:absolute;opacity:0;width:0;height:0}
.cop-m-chip-pick:hover{border-color:var(--cop-primary,#75b83d)}
.cop-m-chip-pick.is-on{background:var(--cop-primary,#75b83d);color:#fff;border-color:var(--cop-primary,#75b83d)}
.cop-m-chips-pick{gap:8px}

/* Form */
.cop-m-field{margin-bottom:16px}
.cop-m-field-row{display:flex;gap:16px;flex-wrap:wrap}
.cop-m-field-row .cop-m-field{flex:1;min-width:190px}
.cop-m-label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cop-text,#2c3e50);margin-bottom:6px}
.cop-m-hint{font-size:12px;color:var(--cop-text-muted,#95a5a6);margin:6px 0 0;line-height:1.5;max-width:64ch}
.cop-m-radios{display:flex;gap:8px;flex-wrap:wrap}
.cop-m-radio{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--cop-border,#e1e8ef);border-radius:var(--cop-radius,10px);cursor:pointer;font-size:13px;transition:all var(--cop-transition,.25s)}
.cop-m-radio:hover{border-color:var(--cop-primary,#75b83d)}
.cop-m-inline-form{display:flex;gap:8px;margin-top:12px}
.cop-m-inline-form .cop-input{flex:1}
.cop-m-session-form{padding:14px;border:1px dashed var(--cop-border,#e1e8ef);border-radius:var(--cop-radius,10px);margin-bottom:18px}

/* Enrolment summary */
.cop-m-profile-row{display:flex;gap:14px;padding:9px 0;border-bottom:1px solid var(--cop-border-light,#f0f3f6);font-size:13px;align-items:flex-start}
.cop-m-profile-row .cop-m-label{min-width:150px;margin:0;flex:none}
.cop-m-profile .cop-m-card-actions{margin-top:14px}

/* Pair panel */
.cop-m-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--cop-text-light,#7f8c8d);text-decoration:none;margin-bottom:14px}
.cop-m-back:hover{color:var(--cop-primary,#75b83d)}
.cop-m-pair-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}
.cop-m-pair-head h1{margin:0 0 3px;font-size:22px;color:var(--cop-text,#2c3e50)}
.cop-m-pair-head p{margin:0}
.cop-m-why{background:var(--cop-bg,#f4f6f9);border-radius:var(--cop-radius,10px);padding:14px 16px;margin-bottom:20px}
.cop-m-why .cop-m-label{margin-bottom:8px}
.cop-m-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
@media(max-width:760px){.cop-m-columns{grid-template-columns:1fr}}

/* Goals */
.cop-m-goals{list-style:none;margin:0;padding:0}
.cop-m-goal{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--cop-border-light,#f0f3f6);font-size:13.5px;line-height:1.5}
.cop-m-goal.is-done span{text-decoration:line-through;color:var(--cop-text-muted,#95a5a6)}
.cop-m-goal-toggle{background:none;border:none;cursor:pointer;padding:0;color:var(--cop-text-muted,#95a5a6);line-height:0;margin-top:2px}
.cop-m-goal-toggle:hover{color:var(--cop-primary,#75b83d)}
.cop-m-goal.is-done .cop-m-goal-toggle{color:var(--cop-success,#27ae60)}

/* Sessions */
.cop-m-sessions{list-style:none;margin:0;padding:0}
.cop-m-sessions li{padding:12px 0;border-top:1px solid var(--cop-border-light,#f0f3f6)}
.cop-m-session-meta{display:flex;gap:8px;align-items:baseline;font-size:12px;color:var(--cop-text-muted,#95a5a6);margin-bottom:4px}
.cop-m-session-meta strong{font-size:13px;color:var(--cop-text,#2c3e50)}
.cop-m-sessions p{margin:0;font-size:13.5px;line-height:1.6;color:var(--cop-text,#2c3e50)}
.cop-m-sessions .cop-m-next{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:12.5px;color:var(--cop-text-light,#7f8c8d)}

.cop-m-pair-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding-top:8px}
.cop-m-pair-foot .cop-m-hint{margin:0}

/* Empty state icon sits inline rather than as a font glyph */
.cop-empty .cop-m-icon{color:var(--cop-text-muted,#95a5a6)}
