/* PsycoPyme Conecta · frontend */
.pcon-wrap,
.pcon-profile-page {
  --pcon-ink: #111827;
  --pcon-muted: #64748b;
  --pcon-line: #e2e8f0;
  --pcon-soft: #f8fafc;
  --pcon-blue: #155eef;
  --pcon-blue-2: #0b4acb;
  --pcon-indigo: #4f46e5;
  --pcon-green: #087a55;
  --pcon-gold: #9a6700;
  --pcon-radius: 22px;
  color: var(--pcon-ink);
  box-sizing: border-box;
}
.pcon-wrap *, .pcon-profile-page * { box-sizing: border-box; }
.pcon-wrap { width: min(1180px, calc(100% - 32px)); margin: 36px auto 64px; }
.pcon-profile-page { padding: 24px 0 72px; background:
  radial-gradient(circle at 9% 0%, rgba(21,94,239,.10), transparent 28%),
  radial-gradient(circle at 88% 8%, rgba(79,70,229,.09), transparent 30%),
  linear-gradient(180deg, #fbfdff 0%, #f7f9fc 100%); }
.pcon-profile-page .pcon-wrap { margin-top: 0; }
.pcon-kicker, .pcon-section-label, .pcon-card-type { color: var(--pcon-blue); font-size: 12px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.pcon-muted { color: var(--pcon-muted); }
.pcon-hero { position: relative; overflow: hidden; border: 1px solid rgba(21,94,239,.12); border-radius: 32px; padding: clamp(32px,6vw,72px); background:
  radial-gradient(circle at 80% 10%, rgba(255,255,255,.38), transparent 28%),
  linear-gradient(135deg, #eff6ff 0%, #eef2ff 50%, #faf5ff 100%); box-shadow: 0 24px 70px rgba(30,64,175,.08); }
.pcon-hero:after { content:"✦"; position:absolute; right:7%; top:8%; font-size:100px; color:rgba(21,94,239,.09); transform:rotate(18deg); }
.pcon-hero h1 { max-width: 780px; margin: 10px 0 14px; font-size: clamp(32px,5vw,58px); line-height: 1.02; letter-spacing: -.035em; color:#0f172a; }
.pcon-hero p { max-width: 760px; margin:0; color:#475569; font-size:clamp(16px,2vw,20px); line-height:1.65; }
.pcon-hero-actions { margin-top: 26px; }
.pcon-btn { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border-radius:999px; border:1px solid transparent; font-weight:750; text-decoration:none !important; line-height:1.1; cursor:pointer; transition:transform .16s ease, box-shadow .16s ease, background .16s ease; }
.pcon-btn:hover { transform:translateY(-1px); }
.pcon-btn-primary { color:#fff !important; background:linear-gradient(135deg,var(--pcon-blue),var(--pcon-indigo)); box-shadow:0 10px 24px rgba(21,94,239,.18); }
.pcon-btn-primary:hover { box-shadow:0 14px 28px rgba(21,94,239,.24); }
.pcon-btn-ghost { color:#1e3a8a !important; background:#fff; border-color:#dbe5f5; }
.pcon-btn-lg { min-height:50px; padding:13px 24px; }
.pcon-btn-block { width:100%; }
.pcon-filter { margin:22px 0; padding:18px; border:1px solid var(--pcon-line); border-radius:24px; background:#fff; box-shadow:0 16px 44px rgba(15,23,42,.05); }
.pcon-filter-main { display:grid; grid-template-columns:1fr auto; gap:10px; }
.pcon-filter input, .pcon-filter select, .pcon-form input, .pcon-form textarea, .pcon-form select { width:100%; border:1px solid #cbd5e1; border-radius:13px; background:#fff; color:#111827; padding:11px 13px; min-height:44px; font:inherit; box-shadow:none; }
.pcon-filter input:focus, .pcon-filter select:focus, .pcon-form input:focus, .pcon-form textarea:focus, .pcon-form select:focus { border-color:#7aa2ff; outline:3px solid rgba(21,94,239,.12); }
.pcon-filter-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; margin-top:10px; }
.pcon-results-head { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:26px 2px 14px; }
.pcon-results-head a, .pcon-breadcrumb a { color:var(--pcon-blue); text-decoration:none; font-weight:700; }
.pcon-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.pcon-card { overflow:hidden; display:flex; flex-direction:column; min-width:0; border:1px solid var(--pcon-line); border-radius:var(--pcon-radius); background:#fff; box-shadow:0 12px 34px rgba(15,23,42,.055); transition:transform .18s ease, box-shadow .18s ease; }
.pcon-card:hover { transform:translateY(-3px); box-shadow:0 18px 45px rgba(15,23,42,.09); }
.pcon-card.is-featured { border-color:#bfdbfe; box-shadow:0 16px 40px rgba(21,94,239,.10); }
.pcon-card-media { position:relative; display:flex; align-items:center; justify-content:center; height:190px; overflow:hidden; background:linear-gradient(135deg,#eff6ff,#eef2ff); text-decoration:none; }
.pcon-card-media img { width:100%; height:100%; object-fit:cover; }
.pcon-avatar-fallback { display:flex; align-items:center; justify-content:center; width:108px; height:108px; border-radius:30px; color:#fff; font-size:48px; font-weight:850; background:linear-gradient(135deg,var(--pcon-blue),#7c3aed); box-shadow:0 14px 35px rgba(79,70,229,.22); }
.pcon-badge { position:absolute; top:12px; left:12px; padding:6px 10px; border-radius:999px; font-size:11px; font-weight:800; }
.pcon-badge-featured { color:#6b4f00; background:#fff5c2; border:1px solid #f6dc70; }
.pcon-card-body { display:flex; flex:1; flex-direction:column; padding:19px; }
.pcon-card h3 { margin:6px 0 10px; font-size:21px; line-height:1.2; }
.pcon-card h3 a { color:#0f172a; text-decoration:none; }
.pcon-verified { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; color:#fff; background:var(--pcon-blue); font-size:12px; vertical-align:middle; }
.pcon-verified-lg { width:28px; height:28px; font-size:16px; transform:translateY(-3px); }
.pcon-chips { display:flex; flex-wrap:wrap; gap:6px; }
.pcon-chips span { padding:5px 9px; border-radius:999px; background:#f1f5f9; color:#475569; font-size:12px; font-weight:650; }
.pcon-chips-lg span { padding:7px 11px; font-size:13px; }
.pcon-card-excerpt { color:#64748b; line-height:1.55; margin:12px 0; }
.pcon-card-meta { display:grid; gap:6px; margin-top:auto; padding-top:8px; color:#64748b; font-size:13px; }
.pcon-rating { color:#b7791f; }
.pcon-rating b { color:#0f172a; }
.pcon-card-actions { display:flex; gap:8px; margin-top:16px; }
.pcon-card-actions .pcon-btn { flex:1; padding-left:12px; padding-right:12px; }
.pcon-pagination { display:flex; flex-wrap:wrap; gap:6px; justify-content:center; margin:30px 0; }
.pcon-pagination .page-numbers { display:flex; min-width:40px; height:40px; align-items:center; justify-content:center; border:1px solid var(--pcon-line); border-radius:11px; background:#fff; color:#334155; text-decoration:none; }
.pcon-pagination .current { color:#fff; background:var(--pcon-blue); border-color:var(--pcon-blue); }
.pcon-empty, .pcon-auth-card { text-align:center; border:1px dashed #cbd5e1; border-radius:24px; padding:40px 24px; background:#fff; }
.pcon-auth-card { max-width:720px; margin:70px auto; border-style:solid; box-shadow:0 18px 55px rgba(15,23,42,.07); }
.pcon-auth-card h2 { font-size:32px; margin:10px 0; }
.pcon-auth-card p { color:#64748b; font-size:17px; line-height:1.65; }
.pcon-editor-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:22px; }
.pcon-editor-head h1 { margin:5px 0 0; }
.pcon-form { display:grid; gap:15px; }
.pcon-form-section { border:1px solid var(--pcon-line); border-radius:20px; background:#fff; padding:24px; box-shadow:0 10px 34px rgba(15,23,42,.035); }
.pcon-form-section h3 { margin:0 0 18px; }
.pcon-form label { display:grid; gap:7px; color:#334155; font-weight:700; }
.pcon-form label small, .pcon-form small { color:#64748b; font-weight:500; }
.pcon-form textarea { resize:vertical; line-height:1.55; }
.pcon-field-grid { display:grid; gap:14px; }
.pcon-field-grid.two { grid-template-columns:repeat(2,1fr); }
.pcon-field-grid.three { grid-template-columns:repeat(3,1fr); }
.pcon-form fieldset { margin:0 0 16px; padding:0; border:0; }
.pcon-form legend { margin-bottom:10px; font-weight:800; }
.pcon-check-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.pcon-check { display:flex !important; grid-template-columns:none !important; flex-direction:row !important; align-items:flex-start; gap:8px !important; padding:9px 11px; border:1px solid var(--pcon-line); border-radius:12px; background:#fafcff; font-weight:600 !important; }
.pcon-check input { width:17px !important; height:17px !important; min-height:0 !important; margin:2px 0 0 !important; padding:0 !important; flex:0 0 auto; }
.pcon-check-wide { margin-top:4px; }
.pcon-depth-0 { border-color:#c7d8ff; background:#eef4ff; color:#123a85 !important; font-weight:800 !important; }
.pcon-depth-1 { background:#f5f8ff; }
.pcon-current-image img { width:110px; height:110px; object-fit:cover; border-radius:20px; border:1px solid var(--pcon-line); }
.pcon-form-submit { text-align:center; padding:12px 0; }
.pcon-notice { border-radius:14px; padding:12px 14px; margin:12px 0; font-weight:650; }
.pcon-notice.success { color:#06603f; background:#eafaf3; border:1px solid #b7ecd3; }
.pcon-notice.info { color:#1e40af; background:#eff6ff; border:1px solid #bfdbfe; }
.pcon-breadcrumb { margin:0 0 18px; }
.pcon-profile-hero { display:grid; grid-template-columns:220px minmax(0,1fr); gap:34px; align-items:center; padding:30px; border:1px solid rgba(21,94,239,.13); border-radius:30px; background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.96)); box-shadow:0 22px 60px rgba(15,23,42,.07); }
.pcon-profile-photo { display:flex; min-height:190px; align-items:center; justify-content:center; overflow:hidden; border-radius:25px; background:linear-gradient(135deg,#eff6ff,#eef2ff); }
.pcon-profile-photo img { width:100%; height:220px; object-fit:cover; }
.pcon-profile-intro h1 { margin:7px 0 8px; font-size:clamp(34px,5vw,56px); line-height:1.03; letter-spacing:-.035em; }
.pcon-profile-tagline { max-width:800px; margin:0; color:#475569; font-size:18px; line-height:1.6; }
.pcon-profile-facts { display:flex; flex-wrap:wrap; gap:10px 18px; margin:17px 0; color:#64748b; font-size:14px; }
.pcon-profile-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:20px; }
.pcon-profile-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(310px,.75fr); gap:22px; align-items:start; margin-top:22px; }
.pcon-profile-main { display:grid; gap:18px; }
.pcon-profile-side { display:grid; gap:18px; position:sticky; top:24px; }
.admin-bar .pcon-profile-side { top:56px; }
.pcon-panel { border:1px solid var(--pcon-line); border-radius:var(--pcon-radius); background:#fff; padding:clamp(20px,3vw,30px); box-shadow:0 10px 34px rgba(15,23,42,.045); }
.pcon-panel h2 { margin:7px 0 10px; }
.pcon-prose { color:#334155; font-size:16px; line-height:1.75; }
.pcon-prose p:first-child { margin-top:0; }
.pcon-service-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:14px; }
.pcon-service { display:flex; gap:10px; align-items:flex-start; padding:14px; border:1px solid #e5eaf2; border-radius:14px; background:#fbfdff; }
.pcon-service span { color:var(--pcon-blue); }
.pcon-timeline { display:grid; gap:10px; list-style:none; margin:14px 0 22px; padding:0; }
.pcon-timeline li { position:relative; padding:12px 15px 12px 38px; border:1px solid #e2e8f0; border-radius:13px; background:#fbfdff; color:#334155; }
.pcon-timeline li:before { content:'✦'; position:absolute; left:15px; top:11px; color:var(--pcon-blue); }
.pcon-footnote { font-size:13px; line-height:1.5; margin-bottom:0; }
.pcon-course-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-top:18px; }
.pcon-learning-stats { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.pcon-learning-stats span { padding:10px 15px; border:1px solid #dbe5f5; border-radius:12px; background:#f1f5ff; color:#14213d; }
.pcon-learning-stats strong { font-size:1.2em; color:#1e3a8a; }
.pcon-course { display:grid; gap:9px; overflow:hidden; border:1px solid #dbe5f5; border-radius:16px; background:#f8fbff; padding:10px; text-decoration:none !important; color:#172554 !important; }
.pcon-course:hover { border-color:#7aa2ff; box-shadow:0 8px 24px rgba(21,94,239,.10); }
.pcon-course img,.pcon-course-placeholder { display:flex; width:100%; height:130px; object-fit:cover; align-items:center; justify-content:center; border-radius:10px; background:linear-gradient(135deg,#e0ecff,#ecebff); }
.pcon-course-placeholder { color:#155eef; font-size:42px; }
.pcon-course strong,.pcon-course span:last-child { padding:0 5px; }
.pcon-course span:last-child { color:#155eef; font-size:13px; font-weight:750; padding-bottom:5px; }
.pcon-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.pcon-stars-large, .pcon-review-stars { color:#d49200; letter-spacing:2px; white-space:nowrap; }
.pcon-stars-large { font-size:24px; }
.pcon-review-list { display:grid; gap:12px; margin-top:18px; }
.pcon-review { padding:17px; border:1px solid var(--pcon-line); border-radius:15px; background:#fbfdff; }
.pcon-review-head { display:flex; justify-content:space-between; gap:10px; }
.pcon-review p { color:#475569; line-height:1.6; margin:10px 0; }
.pcon-review time { color:#94a3b8; font-size:12px; }
.pcon-service-verified { margin-left:6px; color:var(--pcon-green); font-size:11px; font-weight:800; }
.pcon-review-form-wrap { margin-top:24px; padding-top:22px; border-top:1px solid var(--pcon-line); }
.pcon-star-picker { margin:0 !important; }
.pcon-stars-input { display:inline-flex; flex-direction:row-reverse; justify-content:flex-end; }
.pcon-stars-input input { position:absolute; opacity:0; pointer-events:none; }
.pcon-stars-input label { cursor:pointer; color:#cbd5e1; font-size:34px; line-height:1; padding:0 2px; }
.pcon-stars-input label:hover, .pcon-stars-input label:hover ~ label, .pcon-stars-input input:checked ~ label { color:#e0a100; }
.pcon-contact-panel > p { color:#64748b; line-height:1.55; }
.pcon-trust-panel { display:flex; gap:13px; align-items:flex-start; }
.pcon-trust-icon { display:flex; flex:0 0 38px; width:38px; height:38px; border-radius:50%; align-items:center; justify-content:center; color:#fff; background:var(--pcon-blue); font-weight:900; }
.pcon-trust-panel p { margin:5px 0 0; color:#64748b; font-size:13px; line-height:1.5; }
.pcon-hp { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0 0 0 0) !important; white-space:nowrap !important; }
.screen-reader-text { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

@media (max-width: 980px) {
  .pcon-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pcon-filter-grid { grid-template-columns:repeat(2,1fr); }
  .pcon-profile-layout { grid-template-columns:1fr; }
  .pcon-profile-side { position:static; }
}
@media (max-width: 720px) {
  .pcon-wrap { width:min(100% - 20px,1180px); margin-top:20px; }
  .pcon-hero { border-radius:24px; padding:30px 22px; }
  .pcon-grid, .pcon-field-grid.two, .pcon-field-grid.three, .pcon-check-grid, .pcon-service-grid, .pcon-course-grid { grid-template-columns:1fr; }
  .pcon-filter-main { grid-template-columns:1fr; }
  .pcon-filter-grid { grid-template-columns:1fr; }
  .pcon-profile-hero { grid-template-columns:1fr; padding:20px; }
  .pcon-profile-photo { min-height:160px; }
  .pcon-profile-photo img { height:220px; }
  .pcon-profile-intro h1 { font-size:38px; }
  .pcon-section-head, .pcon-review-head, .pcon-editor-head { align-items:flex-start; flex-direction:column; }
  .pcon-profile-actions .pcon-btn, .pcon-card-actions .pcon-btn { flex:1 1 auto; }
}
.pcon-editor-actions { display:flex; flex-wrap:wrap; gap:8px; }
.pcon-lead-list { display:grid; gap:14px; }
.pcon-lead-card { padding:22px; }
.pcon-lead-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.pcon-lead-head h3 { margin:5px 0 0; }
.pcon-lead-head time { color:#94a3b8; font-size:12px; white-space:nowrap; }
.pcon-lead-card > p { color:#475569; line-height:1.65; }
.pcon-lead-email { display:inline-block; margin-left:10px; color:#64748b; font-size:13px; }
@media (max-width:720px) { .pcon-lead-head { flex-direction:column; } .pcon-lead-email { display:block; margin:9px 0 0; } }

/* 0.3: explicit colors for themes with dark global typography. */
html body .pcon-wrap, html body .pcon-profile-page { color:#14213d !important; color-scheme:light; }
html body .pcon-wrap :is(.pcon-form-section,.pcon-panel,.pcon-card,.pcon-filter,.pcon-empty,.pcon-auth-card,.pcon-preview,.pcon-preview-card,.pcon-review,.pcon-service),
html body .pcon-profile-page :is(.pcon-panel,.pcon-profile-hero,.pcon-review) { background-color:#fff !important; color:#14213d !important; color-scheme:light; }
html body .pcon-wrap :is(h1,h2,h3,h4,legend,strong,label,label span,p,li),
html body .pcon-profile-page :is(h1,h2,h3,h4,legend,strong,label,label span,p,li) { color:#14213d !important; }
html body .pcon-wrap :is(.pcon-muted,small,.pcon-card-excerpt,.pcon-card-meta),
html body .pcon-profile-page :is(.pcon-muted,small,.pcon-card-excerpt,.pcon-card-meta) { color:#475569 !important; }
html body .pcon-wrap :is(.pcon-kicker,.pcon-section-label,.pcon-card-type),
html body .pcon-profile-page :is(.pcon-kicker,.pcon-section-label,.pcon-card-type) { color:#155eef !important; }
html body .pcon-wrap :is(.pcon-filter input,.pcon-filter select,.pcon-form input:not([type="checkbox"]):not([type="radio"]),.pcon-form select,.pcon-form textarea),
html body .pcon-profile-page :is(.pcon-form input:not([type="checkbox"]):not([type="radio"]),.pcon-form select,.pcon-form textarea) { background:#fff !important; color:#111827 !important; border-color:#94a3b8 !important; -webkit-text-fill-color:#111827; color-scheme:light; }
html body .pcon-wrap :is(input,textarea)::placeholder,
html body .pcon-profile-page :is(input,textarea)::placeholder { color:#64748b !important; -webkit-text-fill-color:#64748b; opacity:1; }
html body .pcon-wrap :is(select option),html body .pcon-profile-page :is(select option) { background:#fff !important; color:#111827 !important; }
html body .pcon-wrap .pcon-btn-primary,html body .pcon-profile-page .pcon-btn-primary { color:#fff !important; -webkit-text-fill-color:#fff; }
html body .pcon-wrap .pcon-btn-ghost,html body .pcon-profile-page .pcon-btn-ghost { color:#1e3a8a !important; -webkit-text-fill-color:#1e3a8a; }
html body .pcon-wrap :is(.pcon-notice.success,.pcon-notice.info) { color:#164e63 !important; }
html body .pcon-wrap .pcon-notice :is(p,span) { color:inherit !important; }
html body .pcon-profile-page .pcon-profile-hero { background:linear-gradient(135deg,#fff,#eff6ff) !important; }
html body .pcon-wrap .pcon-hero { background:linear-gradient(135deg,#eff6ff,#faf5ff) !important; }
html body .pcon-wrap .pcon-hero :is(h1,p) { color:#14213d !important; }
html body .pcon-wrap .pcon-chips span,html body .pcon-profile-page .pcon-chips span { background:#edf4ff !important; color:#244378 !important; }
html body .pcon-wrap [hidden],html body .pcon-profile-page [hidden] { display:none !important; }
.pcon-profile-tabs { display:flex; flex-wrap:wrap; gap:9px; margin:0 0 18px; }
.pcon-profile-tabs a { border:1px solid #cbd5e1; background:#fff; color:#244378 !important; border-radius:999px; padding:9px 16px; text-decoration:none !important; font-weight:750; }
.pcon-profile-tabs .is-active { background:#155eef; color:#fff !important; border-color:#155eef; }
.pcon-type-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:16px 0; }
.pcon-form label.pcon-type-choice { position:relative; display:flex; align-items:center; min-height:72px; border:2px solid #dbe5f5; border-radius:17px; padding:16px; background:#f8fbff; cursor:pointer; font-weight:850; }
.pcon-type-choice:has(input:checked) { border-color:#155eef !important; background:#eef4ff !important; box-shadow:0 8px 20px rgba(21,94,239,.10); }
.pcon-type-choice input { width:18px !important; min-height:18px !important; flex:0 0 auto; margin:0 9px 0 0; accent-color:#155eef; }
.pcon-type-choice input:focus-visible { outline:3px solid #155eef; outline-offset:3px; }
.pcon-editor-form [data-pcon-person],.pcon-editor-form [data-pcon-org],.pcon-editor-form [data-pcon-business] { margin-top:14px; }
.pcon-opportunity { display:inline-block; margin:8px 5px 6px 0; border-radius:999px; padding:6px 11px; color:#075743 !important; background:#dcfce7; font-size:12px; font-weight:850; }
.pcon-opportunity-hiring { color:#6b3bc9 !important; background:#f1eaff; }
.pcon-career-panel { border-color:#c7d8ff; }
.pcon-career-panel .pcon-btn { margin-top:15px; }
.pcon-preview { margin-top:30px; padding:clamp(18px,4vw,30px); border:1px solid #dbe5f5; border-radius:24px; background:#fff; box-shadow:0 18px 42px rgba(21,94,239,.06); }
.pcon-preview h2 { margin:6px 0; }
.pcon-preview > p { margin:0 0 18px; color:#475569; }
.pcon-preview-card { display:grid; grid-template-columns:minmax(140px,230px) minmax(0,1fr); overflow:hidden; border:1px solid #dae6fb; border-radius:22px; }
.pcon-preview-photo { min-height:280px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#e6f1ff,#ede9fe); }
.pcon-preview-photo img { width:100%; height:100%; min-height:280px; object-fit:cover; }
.pcon-preview-photo span { display:grid; place-items:center; width:110px; height:110px; border-radius:30px; color:#fff; background:linear-gradient(135deg,#155eef,#7c3aed); font-size:52px; font-weight:850; }
.pcon-preview-body { padding:clamp(16px,4vw,28px); }
.pcon-preview-body h3 { margin:7px 0; font-size:clamp(24px,3vw,36px); }
.pcon-preview-body p { margin:6px 0 12px; white-space:pre-wrap; line-height:1.5; }
.pcon-preview-body .pcon-chips { margin:8px 0 14px; }
.pcon-preview-status { color:#087a55; font-weight:850; }
.pcon-preview-section { margin:14px 0; padding-top:12px; border-top:1px solid #e2e8f0; }
.pcon-preview-section:empty { display:none; }
.pcon-preview-action { display:inline-flex; margin-top:10px; padding:11px 18px; border-radius:99px; color:#fff !important; background:#155eef; font-weight:750; }
@media (max-width:720px) { .pcon-type-grid { grid-template-columns:1fr; } .pcon-preview-card { grid-template-columns:1fr; } .pcon-preview-photo,.pcon-preview-photo img { min-height:170px; max-height:240px; } }
.pcon-editor-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); gap:18px; align-items:start; }
.pcon-editor-layout > .pcon-preview { position:sticky; top:22px; margin:0; max-height:calc(100vh - 44px); overflow:auto; }
.pcon-editor-layout .pcon-preview-card { grid-template-columns:1fr; }
.pcon-editor-layout .pcon-preview-photo,.pcon-editor-layout .pcon-preview-photo img { min-height:155px; max-height:190px; }
@media (max-width:1060px) { .pcon-editor-layout { grid-template-columns:1fr; } .pcon-editor-layout > .pcon-preview { position:static; max-height:none; } .pcon-editor-layout .pcon-preview-card { grid-template-columns:minmax(130px,230px) 1fr; } }
@media (max-width:720px) { .pcon-editor-layout .pcon-preview-card { grid-template-columns:1fr; } }

/* Bolsa de empleo: el contraste se mantiene también sobre temas oscuros. */
.pcon-job-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr)); gap:16px; margin:18px 0; }
.pcon-job-card { display:flex; flex-direction:column; gap:10px; padding:23px; border:1px solid #dbe5f5; border-radius:22px; background:#fff; box-shadow:0 12px 32px rgba(15,23,42,.06); }
.pcon-job-card h3 { margin:0; font-size:23px; line-height:1.2; }
.pcon-job-card p { margin:0; color:#475569; line-height:1.5; }
.pcon-job-card .pcon-chips { margin:5px 0; }
.pcon-job-card .pcon-btn { margin-top:auto; align-self:flex-start; }
.pcon-job-employer a { color:#155eef !important; font-weight:750; }
.pcon-job-list { display:grid; gap:10px; }
.pcon-job-row { display:flex; align-items:center; justify-content:space-between; gap:20px; border:1px solid #dbe5f5; border-radius:15px; padding:15px 18px; background:#f8fbff; }
.pcon-job-row > div:first-child { display:grid; gap:6px; }
.pcon-job-status { display:inline-block; width:max-content; border-radius:100px; padding:4px 9px; color:#244378; background:#edf4ff; font-size:12px; font-weight:750; }
.pcon-job-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.pcon-job-actions form { display:inline; margin:0; }
.pcon-link-button { border:0; background:transparent; padding:0; font:inherit; color:#155eef; text-decoration:underline; cursor:pointer; }
.pcon-job-application { padding:18px; border:1px solid #dbe5f5; border-radius:15px; background:#f8fbff; }
.pcon-job-application h3 { margin:0; }
.pcon-job-application p { overflow-wrap:anywhere; }
.pcon-job-editor { margin-top:22px; }
.pcon-job-editor .pcon-form { max-width:870px; }
.pcon-job-page .pcon-job-hero { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; }
.pcon-job-page .pcon-job-hero h1 { color:#14213d; }
.pcon-job-page .pcon-job-hero a:not(.pcon-btn) { color:#155eef; }
html body .pcon-wrap :is(.pcon-job-card,.pcon-job-row,.pcon-job-application) { background:#fff !important; color:#14213d !important; color-scheme:light; }
html body .pcon-wrap .pcon-job-row { background:#f8fbff !important; }
html body .pcon-wrap :is(.pcon-job-card,.pcon-job-row,.pcon-job-application) :is(h2,h3,p,strong,span) { color:#14213d !important; }
html body .pcon-wrap .pcon-job-status { color:#244378 !important; background:#edf4ff !important; }
html body .pcon-wrap :is(.pcon-job-card,.pcon-job-row,.pcon-job-application) a:not(.pcon-btn) { color:#155eef !important; }
@media (max-width:720px) { .pcon-job-row { align-items:flex-start; flex-direction:column; } .pcon-jobs-board .pcon-filter-main { grid-template-columns:1fr; } }

/* Fotografías y logos de perfil en formato visual 1:1. Conserva el archivo original. */
.pcon-card-media { height:210px; }
.pcon-card-media img { width:170px; height:170px; aspect-ratio:1; flex:none; object-fit:cover; object-position:center; border-radius:20px; }
.pcon-card-media .pcon-avatar-fallback { width:170px; height:170px; border-radius:20px; }
.pcon-profile-photo { width:220px; height:220px; min-height:0; aspect-ratio:1; }
.pcon-profile-photo img { display:block; width:100%; height:100%; aspect-ratio:1; object-fit:cover; object-position:center; }
.pcon-preview-photo img { display:block; width:200px; height:200px; min-height:0; aspect-ratio:1; object-fit:cover; object-position:center; border-radius:18px; }
.pcon-editor-layout .pcon-preview-photo img { width:170px; height:170px; min-height:0; max-height:none; }
.pcon-current-image img { width:110px; height:110px; aspect-ratio:1; object-fit:cover; }
@media (max-width:720px) {
  .pcon-profile-photo { width:min(220px,100%); height:auto; min-height:0; margin-inline:auto; }
  .pcon-profile-photo img { height:100%; }
  .pcon-editor-layout .pcon-preview-photo { min-height:220px; max-height:none; }
  .pcon-preview-photo img,.pcon-editor-layout .pcon-preview-photo img { width:min(200px,calc(100% - 24px)); height:auto; aspect-ratio:1; min-height:0; max-height:none; }
}

/* La bolsa muestra todas las profesiones y los tres recorridos del directorio. */
.pcon-pathways { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:20px 0 26px; }
.pcon-pathway { display:flex; align-items:center; gap:16px; min-width:0; padding:20px; border:1px solid #d7e3f5; border-radius:22px; text-decoration:none !important; background:#fff; color:#14213d !important; box-shadow:0 12px 32px rgba(18,52,110,.055); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.pcon-pathway:hover,.pcon-pathway:focus-visible { transform:translateY(-3px); border-color:#8db2f5; box-shadow:0 19px 42px rgba(21,94,239,.13); }
.pcon-pathway.is-active { border-color:#155eef; box-shadow:0 0 0 2px rgba(21,94,239,.12),0 16px 38px rgba(21,94,239,.11); }
.pcon-pathway-icon { display:grid; place-items:center; flex:none; width:52px; height:52px; border-radius:17px; background:#e8f1ff; color:#155eef !important; font-size:26px; font-weight:850; }
.pcon-pathway:nth-child(2) .pcon-pathway-icon { background:#f0eaff; color:#6942c6 !important; }
.pcon-pathway:nth-child(3) .pcon-pathway-icon { background:#e2f8f1; color:#087a55 !important; }
.pcon-pathway strong { display:block; color:#14213d !important; font-size:18px; line-height:1.2; }
.pcon-pathway small { display:block; margin-top:5px; color:#526279 !important; line-height:1.35; font-size:13px; }
.pcon-pathway-arrow { margin-left:auto; color:#155eef !important; font-size:21px; }
.pcon-form fieldset.pcon-secondary-areas { margin:24px 0; padding:18px; border:1px solid #d7e3f5; border-radius:20px; background:#f8fbff; }
.pcon-secondary-areas legend { padding:0 7px; color:#14213d; font-weight:850; }
.pcon-secondary-areas > p { margin:0 0 12px; }
.pcon-secondary-group { padding:15px 0; border-top:1px solid #dce6f5; }
.pcon-secondary-group > strong { display:block; margin-bottom:12px; color:#254b84; }
.pcon-secondary-group .pcon-check-grid { margin:0; }
.pcon-industry-field { padding:16px; border:1px solid #d4e3fa; border-radius:18px; background:#eef5ff; }
html body .pcon-wrap .pcon-pathway { background:#fff !important; color:#14213d !important; color-scheme:light; }
html body .pcon-wrap :is(.pcon-secondary-areas,.pcon-industry-field) { color:#14213d !important; color-scheme:light; }
html body .pcon-wrap :is(.pcon-secondary-areas,.pcon-industry-field) :is(legend,strong,span,p,small) { color:#14213d !important; }
@media (max-width:1100px) { .pcon-pathways { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:900px) { .pcon-pathways { grid-template-columns:1fr; } .pcon-pathway { padding:15px 17px; } }

/* Insignia de aprendizaje validada con una inscripción de MasterStudy. */
.pcon-student-badge { display:inline-flex; align-items:center; gap:7px; width:max-content; max-width:100%; margin:8px 0 4px; padding:8px 13px; border:1px solid #9cb9ec; border-radius:999px; background:linear-gradient(125deg,#eaf3ff,#f2efff); box-shadow:0 6px 17px rgba(40,85,165,.12); color:#204581 !important; font-size:13px; font-weight:850; letter-spacing:.01em; }
.pcon-student-badge > span { display:grid; place-items:center; width:23px; height:23px; border-radius:50%; background:#155eef; color:#fff !important; font-size:15px; line-height:1; }
.pcon-learning-panel h3 { margin:23px 0 0; font-size:19px; color:#14213d; }
.pcon-course .pcon-course-status { display:inline-block; width:max-content; margin:0 5px 5px; padding:5px 10px !important; border-radius:999px; background:#dff8f0; color:#075743 !important; font-size:12px; font-weight:800; }
html body .pcon-profile-page .pcon-student-badge { color:#204581 !important; background:linear-gradient(125deg,#eaf3ff,#f2efff) !important; }

/* Rutas de registro diferenciadas y niveles educativos dependientes. */
.pcon-type-choice span { display:grid; gap:4px; }
.pcon-type-choice small { display:block; color:#526279; font-size:12px; font-weight:550; line-height:1.35; }
.pcon-type-choice:has(input:checked) small { color:#254b84; }
.pcon-person-path > p { margin-top:0; }
.pcon-form [data-pcon-detail-group] { display:block; margin-top:16px; padding:16px; border:1px solid #c7d8ff; border-radius:16px; background:#f1f6ff; }
.pcon-form fieldset.pcon-org-areas { margin:18px 0 22px; padding:18px; border:1px solid #cde8df; border-radius:20px; background:#f1faf7; }
.pcon-org-areas legend { padding:0 7px; font-weight:850; color:#145847; }
.pcon-org-areas > p { margin:0 0 12px; }
html body .pcon-wrap :is(.pcon-org-areas,[data-pcon-detail-group]) { color:#14213d !important; color-scheme:light; }
html body .pcon-wrap :is(.pcon-org-areas,[data-pcon-detail-group]) :is(legend,span,p,small) { color:#14213d !important; }
html body .pcon-wrap .pcon-type-choice small { color:#526279 !important; }

/* 0.5.3 · Identidad visual coherente para el directorio, la bolsa y las fichas. */
.pcon-wrap,.pcon-profile-page { --pcon-navy:#101c43; --pcon-violet:#6049d8; --pcon-teal:#087f71; --pcon-card-shadow:0 16px 38px rgba(20,38,82,.075); }
.pcon-wrap :is(h1,h2,h3),.pcon-profile-page :is(h1,h2,h3) { text-wrap:balance; }
.pcon-wrap :is(p,small),.pcon-profile-page :is(p,small) { overflow-wrap:break-word; }

/* Navegación propia de Conecta: visible sin alterar el menú del tema. */
.pcon-site-nav { display:flex; align-items:center; gap:22px; min-width:0; margin:0 0 23px; padding:10px 12px 10px 20px; border:1px solid #223568; border-radius:22px; background:radial-gradient(circle at 76% -40%,rgba(128,101,255,.52),transparent 40%),linear-gradient(115deg,#101c43,#1b3064 68%,#202957); box-shadow:0 15px 38px rgba(16,28,67,.19); color:#fff; }
.pcon-site-nav-brand { display:inline-flex; align-items:center; gap:6px; flex:none; color:#fff !important; font-size:18px; font-weight:850; letter-spacing:-.04em; }
.pcon-site-nav-brand span { color:#ffcf73 !important; font-size:22px; }
.pcon-site-nav-links { display:flex; align-items:center; flex:1; justify-content:flex-end; gap:3px; min-width:0; overflow-x:auto; scrollbar-width:thin; padding:3px 0; }
html body .pcon-wrap .pcon-site-nav a,html body .pcon-profile-page .pcon-site-nav a { display:inline-flex; align-items:center; gap:7px; flex:none; padding:11px 13px; border:1px solid transparent; border-radius:13px; color:#e8edff !important; font-size:13px; font-weight:750; text-decoration:none !important; white-space:nowrap; transition:background .18s ease,transform .18s ease; }
.pcon-site-nav a > span { color:#b9c9ff !important; font-size:17px; line-height:1; }
html body .pcon-wrap .pcon-site-nav a:hover,html body .pcon-profile-page .pcon-site-nav a:hover { background:rgba(255,255,255,.14); color:#fff !important; transform:translateY(-1px); }
html body .pcon-wrap .pcon-site-nav a.is-active,html body .pcon-profile-page .pcon-site-nav a.is-active { background:#fff; color:#192e65 !important; box-shadow:0 5px 15px rgba(0,0,0,.13); }
html body .pcon-wrap .pcon-site-nav a.is-active > span,html body .pcon-profile-page .pcon-site-nav a.is-active > span { color:#155eef !important; }

html body .pcon-wrap .pcon-hero { isolation:isolate; border:1px solid #d5def8; background:radial-gradient(circle at 84% 20%,rgba(154,132,255,.21),transparent 28%),radial-gradient(circle at 60% 110%,rgba(103,214,201,.18),transparent 30%),linear-gradient(125deg,#f8fbff,#eaf0ff 58%,#f9f3ff) !important; box-shadow:0 28px 65px rgba(32,61,130,.10); }
.pcon-hero:before { content:""; position:absolute; width:320px; height:320px; right:-120px; bottom:-188px; border:1px solid rgba(91,99,216,.19); border-radius:50%; box-shadow:0 0 0 58px rgba(107,121,236,.045),0 0 0 110px rgba(107,121,236,.035); pointer-events:none; z-index:0; }
.pcon-hero:after { pointer-events:none; z-index:0; }
.pcon-hero > * { position:relative; z-index:1; }
.pcon-hero-actions { display:flex; flex-wrap:wrap; gap:9px; }
.pcon-btn { font:inherit; font-size:14px; font-weight:800; letter-spacing:.005em; text-align:center; }
.pcon-btn-primary { background:linear-gradient(120deg,#155eef,#5143d8); border-color:#3358dc; }
html body .pcon-wrap .pcon-btn-primary:hover,html body .pcon-profile-page .pcon-btn-primary:hover { background:linear-gradient(120deg,#104ed3,#3d30b5); color:#fff !important; }
.pcon-btn-ghost { border-color:#cbd9f1; box-shadow:0 4px 12px rgba(22,55,128,.045); }
.pcon-btn-ghost:hover { background:#eff5ff; border-color:#a8c2ef; }
.pcon-wrap :is(a,button,summary,input,select,textarea):focus-visible,.pcon-profile-page :is(a,button,summary,input,select,textarea):focus-visible { outline:3px solid #e4a223 !important; outline-offset:3px; }
.pcon-wrap .pcon-btn:active,.pcon-profile-page .pcon-btn:active { transform:translateY(1px); box-shadow:none; }
.pcon-wrap .pcon-btn:disabled,.pcon-profile-page .pcon-btn:disabled { cursor:wait; opacity:.72; transform:none; }

.pcon-pathways { gap:16px; }
.pcon-pathway { position:relative; isolation:isolate; overflow:hidden; min-height:114px; border-color:#d8e1f1; box-shadow:var(--pcon-card-shadow); }
.pcon-pathway:before { content:""; position:absolute; inset:0 0 auto; height:4px; background:linear-gradient(90deg,#155eef,#7a64e8); }
.pcon-pathway:nth-child(2):before { background:linear-gradient(90deg,#6550d6,#ac6ccf); }
.pcon-pathway:nth-child(3):before { background:linear-gradient(90deg,#078675,#55b9a9); }
.pcon-pathway.is-active { background:#f4f7ff !important; }

.pcon-filter { border-color:#d7e3f3; padding:clamp(16px,2.5vw,25px); box-shadow:var(--pcon-card-shadow); }
.pcon-filter-main { align-items:end; }
.pcon-filter-details { margin-top:13px; border-top:1px solid #e3eaf4; }
.pcon-filter-details summary { display:flex; align-items:center; gap:8px; width:max-content; min-height:44px; padding:12px 3px 7px; color:#244b88; font-size:13px; font-weight:800; cursor:pointer; list-style:none; }
.pcon-filter-details summary::-webkit-details-marker { display:none; }
.pcon-filter-details summary span { display:inline-block; color:#155eef; font-size:20px; line-height:1; transition:transform .18s ease; }
.pcon-filter-details[open] summary span { transform:rotate(180deg); }
.pcon-filter-details .pcon-filter-grid { margin-top:10px; }
.pcon-results-head { margin-top:33px; }
.pcon-results-head > :is(strong,h2) { margin:0; color:#132a61 !important; font-size:clamp(20px,2.2vw,27px); line-height:1.25; }

/* Tarjetas: acento según el tipo, retrato cuadrado y CTA distinguible. */
.pcon-card { --pcon-type-accent:#155eef; --pcon-type-soft:#eaf1ff; position:relative; border-color:#d9e3f3; box-shadow:var(--pcon-card-shadow); }
.pcon-card[data-pcon-type="business"] { --pcon-type-accent:#6546bd; --pcon-type-soft:#f0ecfc; }
.pcon-card[data-pcon-type="venture"] { --pcon-type-accent:#087b70; --pcon-type-soft:#e8f8f4; }
.pcon-card:before { content:""; position:absolute; z-index:3; inset:0 0 auto; height:4px; background:var(--pcon-type-accent); }
.pcon-card.is-featured { border-color:#e6c678; box-shadow:0 19px 44px rgba(136,98,25,.13); }
.pcon-card.is-featured:before { background:linear-gradient(90deg,#cf9631,#f2d279,#a56e19); }
.pcon-card-media { isolation:isolate; height:205px; background:radial-gradient(circle at 24% 10%,#fff,transparent 32%),linear-gradient(135deg,var(--pcon-type-soft),#f8fbff); }
.pcon-card-media:before { content:""; position:absolute; width:235px; height:235px; border:1px solid rgba(37,78,154,.13); border-radius:50%; box-shadow:0 0 0 22px rgba(57,89,174,.045); z-index:0; }
.pcon-card-media img,.pcon-card-media .pcon-avatar-fallback { position:relative; z-index:1; width:158px; height:158px; border:4px solid #fff; border-radius:23px; box-shadow:0 10px 26px rgba(19,42,94,.16); }
.pcon-card-media .pcon-avatar-fallback { background:linear-gradient(135deg,var(--pcon-type-accent),#5f53c9); }
.pcon-card-body { padding:21px; }
.pcon-card-type { color:var(--pcon-type-accent) !important; }
.pcon-card h3 { margin:9px 0 11px; font-size:22px; }
.pcon-card h3 a:hover { color:#155eef; text-decoration:underline; text-underline-offset:3px; }
.pcon-card-excerpt { margin:14px 0; min-height:44px; }
.pcon-card-actions { padding-top:16px; border-top:1px solid #e9eef6; }
.pcon-chips span { border:1px solid #dbe7f7; }
.pcon-job-card { position:relative; overflow:hidden; border-color:#d8e1f2; box-shadow:var(--pcon-card-shadow); transition:transform .18s ease,box-shadow .18s ease; }
.pcon-job-card:before { content:""; position:absolute; inset:0 0 auto; height:4px; background:linear-gradient(90deg,#6350d6,#178d87); }
.pcon-job-card:hover { transform:translateY(-3px); box-shadow:0 20px 45px rgba(20,38,82,.12); }
.pcon-job-card h3 a { color:#132a61 !important; text-decoration:none; }
.pcon-job-card h3 a:hover { text-decoration:underline; text-underline-offset:3px; }
.pcon-job-card .pcon-btn { width:100%; }
.pcon-job-row,.pcon-job-application,.pcon-lead-card { box-shadow:0 8px 23px rgba(23,48,99,.045); }

/* Formularios y fichas mantienen una superficie clara aun con tema oscuro. */
.pcon-editor-head { padding:6px 0 4px; }
.pcon-editor-head h1 { font-size:clamp(30px,4vw,46px); letter-spacing:-.035em; }
.pcon-editor-actions { gap:7px; }
.pcon-editor-actions .pcon-btn { font-size:12px; min-height:40px; padding:9px 12px; }
.pcon-profile-tabs { padding:6px 0 10px; border-bottom:1px solid #dce6f4; }
.pcon-profile-tabs a { transition:background .18s ease,transform .18s ease; }
.pcon-profile-tabs a:hover { background:#eff5ff; transform:translateY(-1px); }
.pcon-profile-tabs a.is-active:hover { background:#155eef; }
.pcon-form-section { position:relative; overflow:hidden; border-color:#dce5f2; border-radius:23px; padding:clamp(19px,2.7vw,29px); box-shadow:var(--pcon-card-shadow); }
.pcon-form-section:before { content:""; position:absolute; inset:0 auto 0 0; width:4px; background:linear-gradient(180deg,#155eef,#9076e9 65%,#d8e9ff); }
.pcon-form-section h3 { color:#142c68 !important; font-size:clamp(20px,2.2vw,25px); letter-spacing:-.025em; }
.pcon-form :is(input,textarea,select):not([type="checkbox"]):not([type="radio"]) { transition:border-color .18s ease,box-shadow .18s ease; }
.pcon-form :is(input,textarea,select):not([type="checkbox"]):not([type="radio"]):focus { border-color:#3776ed !important; box-shadow:0 0 0 4px rgba(21,94,239,.12); }
.pcon-check { transition:border-color .18s ease,background .18s ease; }
.pcon-check:hover,.pcon-check:focus-within { border-color:#93b5eb; background:#f1f6ff; }
.pcon-check:has(input:checked) { border-color:#93b5eb; background:#ecf4ff; }
.pcon-type-choice { transition:transform .18s ease,box-shadow .18s ease; }
.pcon-type-choice:hover { transform:translateY(-2px); box-shadow:0 10px 24px rgba(31,74,148,.09); }
.pcon-preview { border-color:#cbdcf5; box-shadow:0 20px 46px rgba(39,66,130,.10); }
.pcon-preview-card { box-shadow:0 10px 26px rgba(23,46,100,.07); }
.pcon-profile-hero { border-color:#d5def2; background:radial-gradient(circle at 90% 0%,rgba(130,109,232,.15),transparent 30%),linear-gradient(125deg,#fff,#edf4ff) !important; }
html body .pcon-profile-page .pcon-profile-hero { background:radial-gradient(circle at 90% 0%,rgba(130,109,232,.15),transparent 30%),linear-gradient(125deg,#fff,#edf4ff) !important; }
.pcon-profile-facts > span { padding:7px 11px; border:1px solid #dce8f7; border-radius:100px; background:#fff; color:#405776; }
.pcon-profile-page .pcon-panel { border-color:#dce5f2; box-shadow:var(--pcon-card-shadow); }
.pcon-profile-page .pcon-panel h2 { color:#142c68 !important; letter-spacing:-.02em; }
.pcon-learning-stats span { border-radius:16px; box-shadow:0 5px 15px rgba(17,55,132,.045); }
.pcon-course { transition:transform .18s ease,box-shadow .18s ease; }
.pcon-course:hover { transform:translateY(-2px); }
.pcon-empty,.pcon-auth-card { box-shadow:var(--pcon-card-shadow); }

@media (max-width:900px) {
  .pcon-site-nav { display:block; padding:13px 14px; }
  .pcon-site-nav-brand { margin:0 0 7px 7px; }
  .pcon-site-nav-links { justify-content:flex-start; }
}
@media (max-width:720px) {
  .pcon-site-nav { margin-bottom:18px; border-radius:17px; }
  .pcon-hero:after { right:2%; font-size:58px; }
  .pcon-pathway { min-height:90px; }
  .pcon-card-media { height:192px; }
  .pcon-card-body { padding:18px; }
  .pcon-profile-facts { gap:7px; }
}
@media (max-width:520px) {
  .pcon-hero-actions .pcon-btn { width:100%; }
  .pcon-card-actions { flex-direction:column; }
  .pcon-card-actions .pcon-btn { width:100%; }
  .pcon-editor-actions .pcon-btn { flex:1 1 auto; }
  .pcon-profile-actions .pcon-btn { flex:1 1 100%; }
}
@media (prefers-reduced-motion:reduce) {
  .pcon-wrap :is(.pcon-btn,.pcon-card,.pcon-pathway,.pcon-job-card,.pcon-course,.pcon-site-nav a,.pcon-type-choice),.pcon-profile-page :is(.pcon-btn,.pcon-card,.pcon-pathway,.pcon-job-card,.pcon-course,.pcon-site-nav a) { transition:none !important; transform:none !important; }
}

/* 0.5.4 · Ubicaciones dependientes y enlaces sociales sin recursos remotos. */
.pcon-location-fields { margin:13px 0 18px; }
.pcon-location-custom { margin-top:12px; }
.pcon-location-custom:not(:has(label:not([hidden]))) { display:none; }
.pcon-location-filters { display:contents; }
.pcon-location-job { padding:18px; border:1px solid #d6e4f6; border-radius:18px; background:#f7faff; }
.pcon-location-job h3 { margin:0 0 8px; font-size:19px; }
.pcon-location-job .pcon-location-fields { margin-bottom:0; }
.pcon-social-editor { margin:18px 0; padding:18px; border:1px solid #d8e4f7; border-radius:18px; background:#f8fbff; }
.pcon-social-editor h4 { margin:0 0 5px; font-size:17px; color:#142c68 !important; }
.pcon-social-editor p { margin:0 0 15px; }
.pcon-social-links { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 0; }
html body .pcon-wrap .pcon-social-link,html body .pcon-profile-page .pcon-social-link { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:8px 12px; border:1px solid #cbdaf1; border-radius:12px; background:#fff; color:#244a82 !important; font-size:13px; font-weight:750; text-decoration:none !important; box-shadow:0 4px 12px rgba(23,52,111,.045); transition:transform .16s ease,border-color .16s ease,background .16s ease; }
html body .pcon-wrap .pcon-social-link:hover,html body .pcon-profile-page .pcon-social-link:hover { transform:translateY(-2px); border-color:#8daee5; background:#f1f6ff; color:#153b79 !important; }
.pcon-social-link svg { display:block; flex:none; }
.pcon-social-compact { margin:13px 0 0; padding-top:13px; border-top:1px solid #e9eef6; }
html body .pcon-wrap .pcon-social-compact .pcon-social-link { width:38px; height:38px; min-height:38px; padding:8px; border-radius:11px; }
.pcon-social-tiktok { color:#6144a9 !important; }
.pcon-social-google_business { color:#126b67 !important; }
.pcon-social-instagram { color:#91459e !important; }
.pcon-profile-intro > .pcon-social-links { margin-top:17px; }
@media (max-width:720px) {
  .pcon-location-job,.pcon-social-editor { padding:15px; }
  .pcon-social-links { gap:7px; }
}
@media (prefers-reduced-motion:reduce) {
  .pcon-wrap .pcon-social-link,.pcon-profile-page .pcon-social-link { transition:none !important; transform:none !important; }
}

/* 0.5.5 · Exploración geográfica local, tarjetas y entradas por intención. */
.pcon-discover { display:grid; grid-template-columns:minmax(0,3fr) minmax(270px,1fr); gap:16px; margin:18px 0 35px; }
.pcon-globe-panel { position:relative; min-width:0; min-height:610px; overflow:hidden; isolation:isolate; border:1px solid #244572; border-radius:30px; color:#fff !important; background:radial-gradient(circle at 75% 50%,#183f75 0%,#10264f 43%,#091a38 76%),#091a38; box-shadow:0 24px 64px rgba(13,39,83,.2); }
.pcon-globe-panel:before { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(circle at 9% 19%,rgba(32,205,185,.14),transparent 30%),radial-gradient(circle at 91% 10%,rgba(89,105,255,.18),transparent 32%); }
.pcon-globe-copy { position:relative; z-index:2; width:min(47%,420px); padding:clamp(30px,4vw,52px) 0 0 clamp(25px,3vw,42px); pointer-events:none; }
.pcon-globe-copy a { pointer-events:auto; }
html body .pcon-wrap .pcon-globe-eyebrow { display:inline-block; color:#88efdc !important; font-size:12px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
html body .pcon-wrap .pcon-globe-copy h1 { margin:16px 0; color:#fff !important; font-size:clamp(32px,3.3vw,48px); line-height:1.05; letter-spacing:-.04em; text-wrap:balance; }
html body .pcon-wrap .pcon-globe-copy p { max-width:350px; margin:0; color:#ccdcf2 !important; font-size:15px; line-height:1.58; }
.pcon-globe-actions { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:22px; }
.pcon-globe-actions .pcon-btn { font-size:13px; min-height:42px; padding:10px 15px; white-space:nowrap; }
html body .pcon-wrap .pcon-btn-globe { color:#e8f4ff !important; border-color:rgba(201,227,255,.45); background:rgba(255,255,255,.10); }
.pcon-globe-stage { position:absolute; inset:0; z-index:1; }
.pcon-globe-stage canvas { display:block; width:100%; height:100%; touch-action:none; cursor:grab; }
.pcon-globe-stage canvas:active { cursor:grabbing; }
.pcon-globe-controls { position:absolute; right:22px; bottom:23px; display:flex; gap:8px; }
html body .pcon-wrap .pcon-globe-controls button { display:grid; place-items:center; width:40px; height:40px; border:1px solid #8bb5d9; border-radius:12px; background:#183c6a; color:#fff !important; font-size:21px; font-weight:700; line-height:1; cursor:pointer; }
.pcon-globe-controls button:hover,.pcon-globe-controls button:focus-visible { background:#2a6491 !important; }
.pcon-globe-tip { position:absolute; z-index:3; max-width:170px; border:1px solid #91b6da; border-radius:9px; padding:6px 9px; background:#0b284d; color:#fff; font-size:12px; font-weight:750; pointer-events:none; }
.pcon-globe-tip[hidden] { display:none; }
html body .pcon-wrap .pcon-globe-foot { position:absolute; z-index:2; bottom:21px; left:clamp(25px,3vw,42px); max-width:66%; margin:0; color:#bad1eb !important; font-size:11px; line-height:1.4; pointer-events:none; }
.pcon-discover-rail { display:flex; flex-direction:column; min-width:0; max-height:610px; padding:21px 15px 15px; border:1px solid #d5e2f2; border-radius:26px; background:#f9fbff; box-shadow:0 20px 46px rgba(26,59,112,.07); color:#14213d !important; color-scheme:light; }
.pcon-rail-head { padding:1px 7px 12px; }
html body .pcon-wrap .pcon-rail-head h2 { margin:6px 0 5px; color:#102b61 !important; font-size:clamp(20px,2vw,25px); line-height:1.12; }
html body .pcon-wrap .pcon-rail-head p { margin:0; color:#52647e !important; font-size:12px; line-height:1.4; }
.pcon-region-label { display:grid; gap:5px; padding:0 5px 12px; font-size:11px; font-weight:800; color:#3b5375 !important; }
html body .pcon-wrap .pcon-region-label select { width:100%; min-height:36px; padding:6px 9px; border:1px solid #cbd9eb; border-radius:9px; background:#fff; color:#15315f !important; font-size:12px; font-weight:600; line-height:1.3; }
.pcon-rail-list { display:grid; align-content:start; gap:9px; min-height:0; overflow:auto; padding:2px 3px 9px; scrollbar-width:thin; }
html body .pcon-wrap .pcon-rail-card { position:relative; display:grid; grid-template-columns:52px minmax(0,1fr); align-items:center; gap:9px; min-width:0; padding:9px; border:1px solid #dce6f5; border-radius:16px; background:#fff; color:#14213d !important; text-decoration:none !important; box-shadow:0 5px 15px rgba(21,52,105,.04); transition:transform .18s ease,border-color .18s ease; }
html body .pcon-wrap .pcon-rail-card:hover,html body .pcon-wrap .pcon-rail-card:focus-visible { transform:translateY(-2px); border-color:#82adeb; }
.pcon-rail-avatar { display:grid; place-items:center; width:52px; height:52px; overflow:hidden; border-radius:13px; background:#e4f1ff; color:#155eef !important; font-size:29px; font-weight:800; }
.pcon-rail-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.pcon-rail-card[data-kind="psicologia"] .pcon-rail-avatar { background:#e9e8ff; color:#6152c4 !important; }
.pcon-rail-card[data-kind="nutricion"] .pcon-rail-avatar,.pcon-rail-card[data-kind="bienestar"] .pcon-rail-avatar { background:#dff8ee; color:#087a55 !important; }
.pcon-rail-card[data-kind="docencia"] .pcon-rail-avatar { background:#fff0d9; color:#ac6516 !important; }
.pcon-rail-card[data-kind="rh"] .pcon-rail-avatar { background:#e7efff; color:#235ab9 !important; }
.pcon-rail-card[data-kind="empresa"] .pcon-rail-avatar { background:#dceff4; color:#08758c !important; }
.pcon-rail-card[data-kind="emprendimiento"] .pcon-rail-avatar { background:#ffe8f2; color:#a82d7c !important; }
.pcon-rail-body { display:grid; gap:2px; min-width:0; padding-right:12px; }
html body .pcon-wrap .pcon-rail-body small { overflow:hidden; color:#4f62ad !important; font-size:10px; font-weight:800; line-height:1.2; white-space:nowrap; text-overflow:ellipsis; text-transform:uppercase; }
html body .pcon-wrap .pcon-rail-body strong { overflow:hidden; color:#122b58 !important; font-size:13px; line-height:1.18; white-space:nowrap; text-overflow:ellipsis; }
html body .pcon-wrap .pcon-rail-body > span { overflow:hidden; color:#52627b !important; font-size:11px; line-height:1.3; white-space:nowrap; text-overflow:ellipsis; }
html body .pcon-wrap .pcon-rail-body em { overflow:hidden; color:#687a92 !important; font-size:10px; font-style:normal; white-space:nowrap; text-overflow:ellipsis; }
.pcon-rail-arrow { position:absolute; right:9px; top:8px; color:#5377b6 !important; font-size:13px; }
html body .pcon-wrap .pcon-rail-more { display:block; margin-top:auto; padding:12px 7px 2px; border-top:1px solid #dbe5f1; color:#155eef !important; font-size:12px; font-weight:800; text-decoration:none !important; }
.pcon-rail-empty { padding:13px; border-radius:12px; background:#ecf3fe; color:#405976 !important; font-size:13px; line-height:1.45; }
.pcon-intents { scroll-margin-top:20px; margin:0 0 26px; }
.pcon-intents-head { margin:0 0 17px; }
html body .pcon-wrap .pcon-intents-head h2 { margin:6px 0 4px; color:#132b5e !important; font-size:clamp(28px,3vw,37px); letter-spacing:-.03em; }
html body .pcon-wrap .pcon-intents-head p { margin:0; color:#596a83 !important; font-size:14px; }
.pcon-intent-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
html body .pcon-wrap .pcon-intent { position:relative; display:grid; align-content:start; gap:5px; min-height:153px; padding:17px; border:1px solid #dce6f4; border-radius:18px; background:linear-gradient(135deg,#fff,#f6f9ff); color:#152d5e !important; text-decoration:none !important; box-shadow:0 8px 22px rgba(25,54,108,.055); transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
html body .pcon-wrap .pcon-intent:hover,html body .pcon-wrap .pcon-intent:focus-visible { transform:translateY(-3px); border-color:#91b5ee; box-shadow:0 15px 32px rgba(25,54,108,.11); }
.pcon-intent-icon { display:grid; place-items:center; width:35px; height:35px; margin-bottom:6px; border-radius:11px; background:#e7efff; color:#155eef !important; font-size:20px; font-weight:800; }
.pcon-intent:nth-child(3n) .pcon-intent-icon { background:#e4f8f0; color:#087a55 !important; }
.pcon-intent:nth-child(3n + 2) .pcon-intent-icon { background:#f1eaff; color:#7045be !important; }
html body .pcon-wrap .pcon-intent strong { color:#152b5a !important; font-size:16px; line-height:1.2; }
html body .pcon-wrap .pcon-intent small { color:#62748a !important; font-size:12px; line-height:1.35; }
.pcon-intent-arrow { position:absolute; right:15px; top:18px; color:#7693c0 !important; font-size:19px; }
.pcon-intent-job { background:linear-gradient(135deg,#e7f4ff,#eef0ff) !important; border-color:#cbdcf9 !important; }
#pcon-results { scroll-margin-top:25px; }
@media (max-width:1060px) { .pcon-discover { grid-template-columns:minmax(0,2fr) minmax(260px,1fr); } .pcon-globe-copy { width:51%; } .pcon-intent-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:800px) { .pcon-discover { grid-template-columns:1fr; } .pcon-globe-panel { min-height:550px; } .pcon-discover-rail { max-height:none; } .pcon-rail-list { grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; } .pcon-intent-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .pcon-globe-panel { min-height:0; padding-bottom:52px; border-radius:23px; } .pcon-globe-copy { width:100%; padding:28px 24px 0; } html body .pcon-wrap .pcon-globe-copy h1 { max-width:390px; font-size:clamp(30px,9vw,42px); } .pcon-globe-stage { position:relative; height:310px; margin-top:-2px; } html body .pcon-wrap .pcon-globe-foot { bottom:16px; left:24px; max-width:calc(100% - 100px); } .pcon-globe-controls { right:14px; bottom:5px; } .pcon-rail-list { grid-template-columns:1fr; } .pcon-intent-grid { gap:9px; } html body .pcon-wrap .pcon-intent { min-height:140px; padding:14px; } }
@media (max-width:390px) { .pcon-intent-grid { grid-template-columns:1fr; } .pcon-globe-actions .pcon-btn { flex:1 1 100%; } }
@media (prefers-reduced-motion:reduce) { .pcon-wrap .pcon-intent,.pcon-wrap .pcon-rail-card { transition:none !important; transform:none !important; } }

/* 0.5.6 · Identidades, trayectoria académica y reseñas de cursos. */
.pcon-type-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.pcon-card[data-pcon-type="person"] { --pcon-type-accent:#b25c20; --pcon-type-soft:#fff2e6; }
.pcon-visibility-choice { margin:14px 0; padding:14px; border:1px solid #a9c7f1; border-radius:16px; background:#f0f6ff; }
.pcon-visibility-choice p { margin:7px 4px 0; font-size:13px; line-height:1.5; }
.pcon-academy-badges { display:flex; flex-wrap:wrap; gap:6px; margin:9px 0 3px; }
html body .pcon-wrap .pcon-academy-badge,html body .pcon-profile-page .pcon-academy-badge { display:inline-flex; align-items:center; width:max-content; max-width:100%; padding:6px 10px; border:1px solid #b0cafa; border-radius:999px; background:#eaf3ff; color:#24518b !important; font-size:11px; font-weight:850; line-height:1.3; }
html body .pcon-wrap .pcon-academy-badge.is-instructor,html body .pcon-profile-page .pcon-academy-badge.is-instructor { border-color:#c7b2eb; background:#f2ebff; color:#64439b !important; }
.pcon-profile-intro > .pcon-academy-badge { margin:8px 6px 7px 0; padding:9px 13px !important; font-size:13px !important; }
html body .pcon-wrap .pcon-course-rating,html body .pcon-profile-page .pcon-course-rating { color:#70469e !important; font-size:13px; font-weight:800; }
html body .pcon-wrap .pcon-btn-courses,html body .pcon-profile-page .pcon-btn-courses { border-color:#cab5f0; background:#f0eaff; color:#553593 !important; }
.pcon-card-actions:has(.pcon-btn-courses) { flex-wrap:wrap; }
.pcon-card-actions .pcon-btn-courses { flex-basis:100%; }
.pcon-instructor-reviews { scroll-margin-top:30px; }
.pcon-course-quote { margin:14px 0 0; padding:16px 19px; border-left:4px solid #9372d3; border-radius:0 13px 13px 0; background:#f6f2ff; }
.pcon-course-quote > span { color:#985c0c !important; letter-spacing:2px; }
.pcon-course-quote p { margin:8px 0; color:#27334f !important; line-height:1.58; }
.pcon-course-quote cite { font-style:normal; font-size:13px; }
.pcon-course-quote a { color:#493796 !important; font-weight:750; }
#pcon-courses { scroll-margin-top:24px; }
html body .pcon-wrap .pcon-rail-card { display:block; padding:8px; }
html body .pcon-wrap .pcon-rail-card-link { position:relative; display:grid; grid-template-columns:52px minmax(0,1fr); align-items:center; gap:9px; min-width:0; color:#14213d !important; text-decoration:none !important; }
html body .pcon-wrap .pcon-rail-card:focus-within { border-color:#82adeb; }
html body .pcon-wrap .pcon-rail-signal { color:#6a46a4 !important; font-size:10px; font-weight:750; }
html body .pcon-wrap .pcon-rail-courses { display:block; width:max-content; margin:8px 0 0 61px; color:#5c3b9e !important; font-size:11px; font-weight:850; text-decoration:none !important; }
.pcon-rail-courses:hover { text-decoration:underline !important; }
@media (max-width:1000px) { .pcon-type-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:720px) { .pcon-type-grid { grid-template-columns:1fr; } }

/* 0.5.7 · Opciones de identidad legibles incluso dentro de columnas del tema. */
html body .pcon-wrap .pcon-type-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px 0 24px; }
html body .pcon-wrap .pcon-form label.pcon-type-choice { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:10px; min-width:0; min-height:126px; padding:20px 21px; border:1px solid #cddcf3; border-radius:22px; background:linear-gradient(145deg,#fff,#f7faff); color:#162849 !important; font-size:16px; box-shadow:0 7px 20px rgba(20,54,108,.045); }
html body .pcon-wrap .pcon-type-choice > span { grid-column:1; grid-row:1; display:block; min-width:0; overflow-wrap:normal; word-break:normal; }
html body .pcon-wrap .pcon-type-choice strong { display:block; color:#132651 !important; font-size:clamp(17px,2vw,22px); font-weight:850; letter-spacing:-.025em; line-height:1.2; }
html body .pcon-wrap .pcon-type-choice small { display:block; margin-top:9px; color:#4c607e !important; font-size:13px; font-weight:550; line-height:1.42; }
html body .pcon-wrap .pcon-type-choice em { display:inline-block; margin-top:5px; color:#57677c; font-size:11px; font-style:normal; }
html body .pcon-wrap .pcon-type-choice input[type="radio"] { grid-column:2; grid-row:1; width:20px !important; height:20px !important; min-height:20px !important; margin:2px 0 0 !important; accent-color:#155eef; }
html body .pcon-wrap .pcon-type-choice:has(input:checked) { border-color:#2466ea !important; background:linear-gradient(140deg,#eef5ff,#f6f3ff) !important; box-shadow:inset 0 0 0 1px #2466ea,0 12px 26px rgba(35,93,207,.13); }
html body .pcon-wrap .pcon-type-choice:has(input:disabled) { cursor:default; opacity:.68; }
@media (max-width:620px) { html body .pcon-wrap .pcon-type-grid { grid-template-columns:1fr; } html body .pcon-wrap .pcon-form label.pcon-type-choice { min-height:0; padding:18px; } }

.pcon-form input[type="file"] { padding:10px; font-size:14px; }
.pcon-cv-field { padding:16px; border:1px solid #d2dff4; border-radius:16px; background:#f6f9ff; }
.pcon-cv-field small { display:block; line-height:1.5; }

/* 0.5.8 · Empleo y remuneración. */
.pcon-job-compensation { display:grid; gap:13px; padding:20px; border:1px solid #bcd6ed; border-radius:20px; background:linear-gradient(135deg,#f4f9ff,#f5fbf8); }
.pcon-job-compensation h3 { margin:0; color:#133a69 !important; }
.pcon-job-compensation h3 small { font-size:13px; font-weight:600; }
.pcon-job-compensation > p { margin:0; color:#48617d !important; font-size:14px; line-height:1.5; }
html body .pcon-wrap .pcon-job-pay,html body .pcon-profile-page .pcon-job-pay { width:fit-content; padding:9px 13px; border:1px solid #bee5d1; border-radius:12px; background:#ecfaf2; color:#145d46 !important; font-size:15px; font-weight:800; line-height:1.35; }
html body .pcon-wrap .pcon-job-pay strong,html body .pcon-profile-page .pcon-job-pay strong { color:inherit !important; }
.pcon-job-facts { display:flex; flex-wrap:wrap; gap:7px; }
html body .pcon-wrap .pcon-job-facts span { padding:5px 9px; border-radius:100px; background:#edf3fe; color:#244d84 !important; font-size:12px; font-weight:700; }

.pcon-globe-modes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; width:min(100%,390px); margin-top:22px; padding:5px; border:1px solid rgba(172,221,247,.28); border-radius:16px; background:rgba(5,26,58,.62); backdrop-filter:blur(8px); pointer-events:auto; }
html body .pcon-wrap .pcon-globe-modes button { min-width:0; min-height:40px; padding:8px 5px; border:0; border-radius:11px; background:transparent; color:#d9eaff !important; font:inherit; font-size:12px; font-weight:750; line-height:1.15; cursor:pointer; }
html body .pcon-wrap .pcon-globe-modes button[aria-pressed="true"] { background:#fff; color:#15365f !important; box-shadow:0 5px 15px rgba(0,0,0,.20); }
html body .pcon-wrap .pcon-globe-modes button:hover:not([aria-pressed="true"]) { background:rgba(255,255,255,.13); }
.pcon-globe-modes button:focus-visible { outline:3px solid #99e7dd; outline-offset:2px; }
.pcon-globe-copy button { pointer-events:auto; }
.pcon-rail-card[data-kind="empleo"] .pcon-rail-avatar { background:#fff0df; color:#a45920 !important; }
html body .pcon-wrap .pcon-rail-body .pcon-rail-pay { color:#16704e !important; font-weight:850; white-space:normal; line-height:1.25; }
@media (max-width:600px) { .pcon-globe-modes { margin-top:18px; width:100%; } }

/* 0.5.11 · Sistema visual de bordes discretos e insignias Academia. */
.pcon-wrap,.pcon-profile-page {
  --pcon-radius:12px;
  --pcon-card-shadow:0 9px 26px rgba(18,39,75,.075);
}
html body .pcon-wrap :is(.pcon-hero,.pcon-globe-panel),
html body .pcon-profile-page .pcon-profile-hero { border-radius:16px; }
html body .pcon-wrap :is(.pcon-filter,.pcon-site-nav,.pcon-form-section,.pcon-panel,.pcon-preview,.pcon-discover-rail,.pcon-empty,.pcon-auth-card),
html body .pcon-profile-page :is(.pcon-panel,.pcon-profile-photo,.pcon-auth-card) { border-radius:12px; }
html body .pcon-wrap :is(.pcon-card,.pcon-job-card,.pcon-pathway,.pcon-intent,.pcon-rail-card,.pcon-course,.pcon-preview-card),
html body .pcon-profile-page :is(.pcon-course,.pcon-review,.pcon-service,.pcon-course-quote) { border-radius:10px; }
html body .pcon-wrap :is(.pcon-job-row,.pcon-job-application,.pcon-location-job,.pcon-social-editor,.pcon-job-compensation,.pcon-cv-field,.pcon-visibility-choice,.pcon-preview-photo img,.pcon-current-image img),
html body .pcon-profile-page :is(.pcon-timeline li,.pcon-learning-stats span) { border-radius:9px; }
html body .pcon-wrap .pcon-form label.pcon-type-choice { border-radius:10px; }
html body .pcon-wrap :is(.pcon-btn,.pcon-preview-action,.pcon-profile-tabs a,.pcon-social-link,.pcon-globe-modes,.pcon-globe-modes button,.pcon-globe-controls button,.pcon-pagination .page-numbers),
html body .pcon-profile-page :is(.pcon-btn,.pcon-profile-tabs a,.pcon-social-link) { border-radius:8px; }
html body .pcon-wrap :is(.pcon-filter input,.pcon-filter select,.pcon-form input,.pcon-form select,.pcon-form textarea,.pcon-check,.pcon-job-facts span,.pcon-chips span,.pcon-badge,.pcon-opportunity,.pcon-course-status),
html body .pcon-profile-page :is(.pcon-chips span,.pcon-profile-facts > span,.pcon-job-facts span) { border-radius:6px; }
html body .pcon-wrap :is(.pcon-rail-avatar,.pcon-pathway-icon,.pcon-intent-icon) { border-radius:7px; }
.pcon-wrap .pcon-card,.pcon-wrap .pcon-job-card,.pcon-wrap .pcon-pathway,
.pcon-wrap .pcon-intent,.pcon-wrap .pcon-rail-card {
  border-color:#cfdaea;
  box-shadow:var(--pcon-card-shadow);
}
.pcon-wrap .pcon-card:hover,.pcon-wrap .pcon-job-card:hover,
.pcon-wrap .pcon-pathway:hover,.pcon-wrap .pcon-intent:hover {
  transform:translateY(-2px);
  border-color:#9eb8d9;
  box-shadow:0 13px 28px rgba(18,39,75,.12);
}
.pcon-wrap .pcon-card:before { height:3px; }
.pcon-wrap .pcon-card-media {
  height:196px;
  border-bottom:1px solid #e1e9f3;
  background:linear-gradient(145deg,#f3f7fc,#e8eff9);
}
.pcon-wrap .pcon-card-media:before { display:none; }
.pcon-wrap .pcon-card-media img,.pcon-wrap .pcon-card-media .pcon-avatar-fallback {
  width:154px; height:154px; border:3px solid #fff; border-radius:8px;
  box-shadow:0 6px 22px rgba(18,40,80,.14);
}
.pcon-wrap .pcon-card-body { padding:21px 21px 18px; }
html body .pcon-wrap .pcon-card-type { letter-spacing:.11em; font-size:11px; }
html body .pcon-wrap .pcon-card h3 { margin:9px 0 8px; line-height:1.18; }
html body .pcon-wrap .pcon-card-excerpt { color:#475569 !important; font-size:14px; }
.pcon-wrap .pcon-card-actions { border-color:#e3eaf3; }
html body .pcon-wrap .pcon-btn-primary,html body .pcon-profile-page .pcon-btn-primary {
  background:linear-gradient(115deg,#153b78,#225ba5);
  box-shadow:0 5px 15px rgba(23,69,137,.18);
}
html body .pcon-wrap .pcon-btn-primary:hover,html body .pcon-profile-page .pcon-btn-primary:hover {
  border-color:#19467f;
}
.pcon-profile-page .pcon-profile-hero {
  border-color:#d0dbeb;
  background:linear-gradient(135deg,#fff,#f3f7fd);
  box-shadow:0 12px 34px rgba(19,43,83,.085);
}
.pcon-profile-page .pcon-profile-photo { border:1px solid #d8e2ee; background:#e9f0fa; }
.pcon-wrap .pcon-preview-photo img,.pcon-wrap .pcon-current-image img { border-radius:8px; }
.pcon-wrap .pcon-badge-featured {
  border-color:#d2ab60; background:#fff4db; color:#68430a;
  box-shadow:0 4px 12px rgba(87,58,21,.12);
}
.pcon-wrap .pcon-academy-badges { gap:7px; margin-top:11px; }
html body .pcon-wrap .pcon-academy-badge,html body .pcon-profile-page .pcon-academy-badge {
  gap:5px; padding:7px 10px; border-radius:7px;
  font-size:11px; font-weight:850; letter-spacing:.015em;
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 3px 10px rgba(20,78,83,.08);
}
html body .pcon-wrap .pcon-academy-badge.is-student,
html body .pcon-profile-page .pcon-academy-badge.is-student {
  border-color:#83d1c9; background:linear-gradient(135deg,#ebfffb,#d9f5ef);
  color:#075e60 !important;
}
html body .pcon-wrap .pcon-academy-badge.is-instructor,
html body .pcon-profile-page .pcon-academy-badge.is-instructor {
  border-color:#ba944e; background:linear-gradient(115deg,#142648,#252c54 75%,#40375b);
  color:#ffedc3 !important;
  box-shadow:inset 0 1px rgba(255,255,255,.16),0 6px 15px rgba(25,34,70,.20);
}
html body .pcon-profile-page .pcon-profile-intro > .pcon-academy-badge { border-radius:7px; padding:9px 13px !important; }
html body .pcon-profile-page .pcon-student-badge {
  border-color:#83d1c9; border-radius:7px;
  background:linear-gradient(135deg,#ebfffb,#d9f5ef) !important;
  color:#075e60 !important; box-shadow:0 5px 14px rgba(13,107,108,.12);
}
.pcon-profile-page .pcon-student-badge > span { background:#087e7b; }
html body .pcon-wrap .pcon-btn-courses,html body .pcon-profile-page .pcon-btn-courses {
  border-color:#bba36e; background:#fdf9ed; color:#3c3b55 !important;
  box-shadow:none;
}
html body .pcon-wrap .pcon-btn-courses:hover,html body .pcon-profile-page .pcon-btn-courses:hover {
  border-color:#9c7938; background:#fff2ce;
}
html body .pcon-wrap .pcon-course-rating,html body .pcon-profile-page .pcon-course-rating {
  color:#74531c !important;
}
.pcon-profile-page .pcon-course-quote { border-left-color:#b58d46; background:#fffaf0; }
html body .pcon-profile-page .pcon-course-quote a { color:#614716 !important; }

/* 0.5.12: the site's dark canvas never sits behind dark text. */
.pcon-wrap .pcon-intents-head,
.pcon-wrap .pcon-editor-head,
.pcon-wrap .pcon-my-profiles-head,
.pcon-wrap .pcon-results-head {
  padding:clamp(18px,2.5vw,27px);
  border:1px solid #d7e2f1;
  border-radius:12px;
  background:#f8fbff;
  box-shadow:0 8px 22px rgba(10,30,65,.075);
  color-scheme:light;
}
html body .pcon-wrap .pcon-intents-head h2,
html body .pcon-wrap .pcon-editor-head h1,
html body .pcon-wrap .pcon-my-profiles-head h1 { color:#142c68 !important; }
html body .pcon-wrap .pcon-intents-head p,
html body .pcon-wrap .pcon-my-profiles-head p { color:#405675 !important; }
html body .pcon-wrap .pcon-intents-head .pcon-section-label,
html body .pcon-wrap .pcon-editor-head .pcon-kicker,
html body .pcon-wrap .pcon-my-profiles-head .pcon-kicker { color:#155eef !important; }
html body .pcon-wrap .pcon-globe-copy h2 { margin:16px 0; color:#fff !important; font-size:clamp(32px,3.3vw,48px); line-height:1.05; letter-spacing:-.04em; text-wrap:balance; }
.pcon-directory-preview .pcon-preview-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin:22px 0 8px; }
.pcon-directory-preview .pcon-preview-actions .pcon-btn { min-height:48px; }
.pcon-my-profiles-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:20px 0; }
.pcon-my-profiles-head h1 { margin:4px 0 5px; font-size:clamp(30px,4vw,44px); }
.pcon-my-profiles-head p { margin:0; }
.pcon-my-profiles-layout { display:grid; grid-template-columns:minmax(240px,300px) minmax(0,1fr); gap:18px; align-items:start; }
.pcon-my-profiles-list,.pcon-my-profile-detail { min-width:0; padding:clamp(18px,2.6vw,30px); border:1px solid #d7e2f1; border-radius:12px; background:#fff; box-shadow:0 12px 30px rgba(15,34,75,.075); color-scheme:light; }
.pcon-my-profiles-list { display:grid; gap:9px; }
html body .pcon-wrap .pcon-my-profiles-list h2 { margin:0 0 6px; color:#142c68 !important; font-size:20px; }
.pcon-my-profiles-option { display:flex; align-items:center; gap:11px; min-width:0; padding:9px; border:1px solid #dce6f3; border-radius:9px; background:#f8fbff; text-decoration:none !important; }
.pcon-my-profiles-option:hover,.pcon-my-profiles-option.is-active { border-color:#6e9ee5; background:#eaf2ff; }
.pcon-my-profiles-thumb { display:grid; place-items:center; flex:0 0 46px; width:46px; height:46px; overflow:hidden; border-radius:6px; background:#dfeaff; color:#1750a4; }
.pcon-my-profiles-thumb img { width:100%; height:100%; object-fit:cover; }
.pcon-my-profiles-option-copy { display:grid; gap:3px; min-width:0; flex:1; }
html body .pcon-wrap .pcon-my-profiles-option strong { overflow:hidden; color:#172d5a !important; text-overflow:ellipsis; white-space:nowrap; }
html body .pcon-wrap .pcon-my-profiles-option small { color:#526986 !important; }
.pcon-my-profiles-add { display:block; padding:11px; border:1px dashed #95b6e7; border-radius:9px; color:#164a9e !important; font-weight:750; text-decoration:none !important; }
.pcon-my-profile-topline { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:17px; }
.pcon-my-profile-status { padding:7px 11px; border-radius:6px; background:#fff2db; color:#694c12; font-size:13px; font-weight:800; }
.pcon-my-profile-status.is-published { background:#e0f5eb; color:#075e41; }
.pcon-my-profile-hero { display:grid; grid-template-columns:180px minmax(0,1fr); align-items:center; gap:25px; }
.pcon-my-profile-photo { display:grid; place-items:center; width:180px; height:180px; overflow:hidden; border:1px solid #dce6f3; border-radius:9px; background:#e8f0fb; color:#194e96; font-size:52px; }
.pcon-my-profile-photo img { width:100%; height:100%; object-fit:cover; }
html body .pcon-wrap .pcon-my-profile-hero h2 { margin:4px 0 9px; color:#142c68 !important; font-size:clamp(28px,3.2vw,41px); line-height:1.15; }
html body .pcon-wrap .pcon-my-profile-summary { margin:0; color:#405675 !important; font-size:16px; line-height:1.6; }
.pcon-my-profile-hero .pcon-academy-badges { margin:12px 0 0; }
html body .pcon-wrap .pcon-my-profile-place { margin:12px 0 0; color:#526986 !important; }
.pcon-my-profile-terms { margin-top:18px; }
.pcon-my-profile-about { margin-top:22px; padding-top:18px; border-top:1px solid #e1e9f2; }
html body .pcon-wrap .pcon-my-profile-about h3 { margin:0 0 10px; color:#142c68 !important; }
.pcon-my-profile-about .pcon-prose { overflow-wrap:anywhere; }
.pcon-my-profile-foot { display:flex; flex-wrap:wrap; align-items:center; gap:10px 15px; margin-top:23px; padding-top:19px; border-top:1px solid #e1e9f2; }
html body .pcon-wrap .pcon-my-profile-foot p { flex:1 1 250px; margin:0; color:#405675 !important; }
html body .pcon-wrap .pcon-my-profile-foot .pcon-my-profile-note { flex-basis:100%; font-size:13px; }
@media (max-width:800px) { .pcon-my-profiles-layout { grid-template-columns:1fr; } .pcon-my-profiles-head { align-items:flex-start; flex-direction:column; } }
@media (max-width:600px) { html body .pcon-wrap .pcon-globe-copy h2 { max-width:390px; font-size:clamp(30px,9vw,42px); } .pcon-my-profile-hero { grid-template-columns:1fr; } .pcon-my-profile-photo { width:150px; height:150px; } .pcon-directory-preview .pcon-preview-actions .pcon-btn { flex:1 1 100%; } }
html body .pcon-wrap .pcon-rail-body em.pcon-rail-signal {
  display:inline-block; width:fit-content; max-width:100%; margin:3px 0 0;
  padding:4px 6px; border:1px solid; border-radius:5px;
  font-size:10px; font-style:normal; font-weight:800; line-height:1.25;
  overflow:visible; white-space:normal; text-overflow:clip;
}
html body .pcon-wrap .pcon-rail-body em.pcon-rail-signal.is-student {
  border-color:#9bd6cf; background:#e5faf5; color:#075e60 !important;
}
html body .pcon-wrap .pcon-rail-body em.pcon-rail-signal.is-instructor {
  border-color:#a68146; background:#182a4c; color:#ffe9ba !important;
}
html body .pcon-wrap .pcon-rail-courses { color:#5a451e !important; }
@media (max-width:600px) {
  .pcon-wrap .pcon-card-media { height:184px; }
  .pcon-wrap .pcon-card-media img,.pcon-wrap .pcon-card-media .pcon-avatar-fallback { width:146px; height:146px; }
}

/* 0.6.0: seguimiento y herramientas de empleo. */
.pcon-job-card-top { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.pcon-job-card .pcon-save-job,.pcon-single-save .pcon-save-job { margin:0; }
.pcon-job-card .pcon-save-button,.pcon-single-save .pcon-save-button {
  padding:7px 10px; border:1px solid #b6c9e5; border-radius:6px; background:#f2f7ff;
  color:#1a427d; font:inherit; font-size:13px; font-weight:750; cursor:pointer;
}
.pcon-job-card .pcon-save-button[aria-pressed="true"],.pcon-single-save .pcon-save-button[aria-pressed="true"] { border-color:#ddb996; background:#fff4e6; color:#754316; }
.pcon-single-save { display:flex; align-items:center; gap:16px; margin:15px 0; }
.pcon-wrap .pcon-job-view { display:flex; flex-wrap:wrap; gap:8px; }
.pcon-wrap .pcon-job-view .pcon-btn { font-size:13px; }
.pcon-job-metrics { display:block; margin-top:4px; color:#305277; font-size:13px; }
.pcon-owner-metrics { margin:22px 0; padding:18px; border:1px solid #c9dbef; border-radius:9px; background:#f3f8ff; color-scheme:light; }
html body .pcon-owner-metrics h3 { margin:0 0 12px; color:#142c68 !important; }
html body .pcon-owner-metrics p { margin:12px 0 6px; color:#425979 !important; font-size:13px; }
.pcon-metric-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); gap:9px; }
.pcon-metric-row span { padding:12px; border:1px solid #d7e4f3; border-radius:7px; background:#fff; color:#334b6b; }
.pcon-metric-row strong { display:block; color:#142c68; font-size:25px; line-height:1.1; }
.pcon-stage { display:inline-block; width:fit-content; margin-top:6px; padding:5px 9px; border-radius:5px; background:#e7f1ff; color:#174881; font-size:13px; font-weight:750; }
.pcon-application-followup { margin-top:16px; padding:15px; border:1px solid #d9e6f4; border-radius:7px; background:#f8fbff; }
.pcon-application-followup label { margin-bottom:10px; }

/* 0.6.1 · Guía de registro y elección clínica. */
.pcon-onboarding-intro,.pcon-wrap .pcon-auth-paths { color-scheme:light; }
.pcon-onboarding-intro { margin:20px 0; padding:clamp(20px,3vw,32px); border:1px solid #c9d9ee; border-radius:11px; background:linear-gradient(130deg,#f5f9ff,#fff); box-shadow:0 12px 28px rgba(18,48,105,.08); }
html body .pcon-wrap .pcon-onboarding-intro h2 { margin:6px 0 9px; color:#142c68 !important; font-size:clamp(24px,3vw,33px); }
html body .pcon-wrap .pcon-onboarding-intro p { max-width:72ch; margin:0; color:#405675 !important; }
.pcon-onboarding-steps { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.pcon-onboarding-steps span { padding:8px 11px; border:1px solid #d7e4f3; border-radius:6px; background:#fff; color:#264a7d; font-size:13px; font-weight:700; }
.pcon-auth-paths { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:9px; margin:18px 0; }
.pcon-auth-paths span { padding:14px; border:1px solid #d8e4f3; border-radius:8px; background:#f7faff; }
.pcon-auth-paths strong,.pcon-auth-paths small { display:block; color:#172e59 !important; }
.pcon-auth-paths small { margin-top:6px; color:#445c7b !important; font-size:12px; }
.pcon-step-progress { display:none; margin-bottom:14px; padding:15px 18px; border:1px solid #c8daef; border-radius:8px; background:#eff6ff; color:#1a3c74; }
.pcon-editor-form.is-guided .pcon-step-progress { display:block; }
.pcon-step-progress strong { display:block; margin:3px 0 9px; color:#142c68; font-size:19px; }
.pcon-step-track { height:6px; overflow:hidden; border-radius:8px; background:#d4e3f8; }
.pcon-step-track span { display:block; height:100%; border-radius:8px; background:#205ce2; transition:width .25s ease; }
.pcon-editor-form.is-guided .is-step-hidden { display:none !important; }
.pcon-step-nav { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin:17px 0; }
.pcon-step-nav[hidden],.pcon-step-nav [hidden] { display:none !important; }
.pcon-step-nav span { flex:1; text-align:center; color:#455d7e; font-size:13px; }
.pcon-step-nav button:disabled { opacity:.5; cursor:default; }
.pcon-psychology-picker { min-width:0; margin:16px 0; padding:20px; border:1px solid #d6e3f2; border-radius:9px; background:#f9fbff; color-scheme:light; }
html body .pcon-wrap .pcon-psychology-picker legend { padding:0 8px; color:#142c68 !important; font-size:19px; font-weight:800; }
.pcon-psych-groups { display:grid; grid-template-columns:repeat(auto-fit,minmax(245px,1fr)); gap:12px; margin-top:16px; }
.pcon-psych-search { max-width:480px; margin-top:15px; }
.pcon-psych-search[hidden],.pcon-psych-family[hidden],.pcon-psychology-picker [data-pcon-psych-empty][hidden] { display:none !important; }
.pcon-psych-family { min-width:0; padding:14px; border:1px solid #d5e2f2; border-radius:8px; background:#fff; }
.pcon-psych-family:has([data-pcon-epistemology]:checked) { border-color:#6c99dd; box-shadow:0 5px 16px rgba(25,77,151,.1); }
html body .pcon-wrap .pcon-psych-family-choice { margin:0; color:#17376b !important; font-weight:800; }
.pcon-psych-approaches { margin:12px 0 0; padding-top:12px; border-top:1px solid #e0e8f2; }
.pcon-psych-approaches[hidden] { display:none !important; }
.pcon-psych-approaches p,.pcon-psych-legacy p { margin:0 0 8px; color:#4b6280; font-size:12px; }
.pcon-psych-options { display:grid; gap:7px; }
html body .pcon-wrap .pcon-psych-options .pcon-check { min-width:0; margin:0; padding:9px; border:1px solid #e0e8f3; border-radius:6px; background:#f7faff; color:#233d68 !important; overflow-wrap:anywhere; }
.pcon-psych-legacy { margin-top:17px; padding:12px; border:1px solid #d6e3f2; border-radius:7px; background:#fff; }
.pcon-psych-legacy summary { cursor:pointer; color:#17376b; font-weight:750; }
.pcon-academy-options { margin:19px 0 0; padding:12px 15px; border:1px solid #d6e3f2; border-radius:7px; background:#f8fbff; color-scheme:light; }
.pcon-academy-options summary { cursor:pointer; color:#17376b; font-weight:750; }
.pcon-academy-options[hidden] { display:none !important; }
.pcon-academy-options[open] summary { margin-bottom:12px; }
@media(max-width:640px) { .pcon-psych-groups { grid-template-columns:1fr; } .pcon-step-nav span { flex-basis:100%; order:-1; text-align:left; } }

/* Elección gradual de áreas, especialidades y población. */
.pcon-form fieldset.pcon-secondary-areas { border-radius:9px; }
.pcon-secondary-group { padding:9px 0; }
.pcon-secondary-toggle { margin:0 !important; padding:13px 15px !important; border:1px solid #cadcf3; border-radius:7px; background:#fff; font-weight:800; cursor:pointer; }
.pcon-secondary-group:has([data-pcon-secondary-root]:checked) .pcon-secondary-toggle { border-color:#608cdb; background:#eef5ff; }
.pcon-secondary-options { padding:13px 3px 5px; }
.pcon-secondary-options[hidden],.pcon-area-specialty-group[hidden] { display:none !important; }
.pcon-area-specialties { margin:16px 0; padding:17px; border:1px solid #d6e3f2; border-radius:9px; background:#f8fbff; color-scheme:light; }
html body .pcon-wrap .pcon-area-specialties legend { padding:0 8px; color:#142c68 !important; font-size:18px; font-weight:800; }
.pcon-area-specialties > p { margin:0 0 12px; }
.pcon-area-specialty-group { margin:12px 0; padding:13px; border:1px solid #d7e4f2; border-radius:7px; background:#fff; }
.pcon-area-specialty-group > strong { display:block; margin-bottom:9px; color:#17376b; }
.pcon-intervention { margin-bottom:20px; padding:14px; border:1px solid #d5e2f2; border-radius:7px; background:#fff; }
.pcon-intervention strong { color:#17376b; }
.pcon-intervention .pcon-muted { margin:4px 0 10px; }
html body .pcon-wrap :is(.pcon-area-specialties,.pcon-intervention,.pcon-secondary-toggle) :is(span,strong,p,small) { color:#183458 !important; }

/* Guía pública de Conecta. */
.pcon-guide { color-scheme:light; }
.pcon-guide-hero { padding:clamp(22px,4vw,42px); border:1px solid #cedcf0; border-radius:10px; background:linear-gradient(120deg,#f0f6ff,#fff 67%); box-shadow:0 12px 30px rgba(18,48,105,.08); }
html body .pcon-guide h1,html body .pcon-guide h2,html body .pcon-guide h3 { color:#142750 !important; }
.pcon-guide-hero h1 { margin:8px 0 12px; font-size:clamp(31px,4.2vw,52px); line-height:1.1; }
.pcon-guide-hero p { max-width:75ch; margin:0; color:#3d526f !important; font-size:17px; line-height:1.6; }
.pcon-guide-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.pcon-guide-jump { display:flex; gap:8px; overflow-x:auto; padding:15px 1px 17px; scrollbar-width:thin; }
html body .pcon-guide-jump a { flex:none; padding:10px 14px; border:1px solid #d5e2f1; border-radius:6px; background:#fff; color:#1c477d !important; font-weight:750; text-decoration:none; }
html body .pcon-guide-jump a:hover,html body .pcon-guide-jump a:focus-visible { border-color:#215daa; background:#edf5ff; }
.pcon-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:stretch; }
.pcon-guide-path,.pcon-guide-faq { padding:23px; border:1px solid #d9e3f0; border-radius:9px; background:#fff; box-shadow:0 6px 18px rgba(23,49,89,.055); }
.pcon-guide-path { display:flex; flex-direction:column; min-width:0; }
.pcon-guide-mark { display:grid; place-items:center; width:42px; height:42px; margin-bottom:17px; border-radius:7px; background:#eaf2ff; color:#215aa7 !important; font-weight:850; }
.pcon-guide-path:nth-child(2) .pcon-guide-mark { background:#e7f8f3; color:#006e59 !important; }
.pcon-guide-path:nth-child(3) .pcon-guide-mark { background:#f2edff; color:#643f9f !important; }
.pcon-guide-path h2 { margin:6px 0 9px; font-size:23px; }
.pcon-guide-path p,.pcon-guide-path li,.pcon-guide-faq p { color:#3b4e6b !important; line-height:1.55; }
.pcon-guide-path ol { padding-left:22px; margin:14px 0; }
.pcon-guide-path li { padding-left:3px; margin:0 0 12px; }
.pcon-guide-path > .pcon-btn,.pcon-guide-path > .pcon-guide-actions { align-self:flex-start; margin-top:auto; }
.pcon-guide-example { display:grid; gap:4px; margin:5px 0 18px; padding:12px; border-left:3px solid #207968; background:#eefaf6; color:#25443e !important; font-size:14px; }
.pcon-guide-faq { margin-top:18px; }
.pcon-guide-faq details { padding:14px 0; border-top:1px solid #e1e9f3; }
.pcon-guide-faq summary { color:#1b3a71 !important; font-weight:800; cursor:pointer; }
.pcon-guide-faq details p { max-width:85ch; margin:11px 0 0; }
.pcon-guide-footer { margin-top:18px; padding:18px 22px; border:1px solid #c9daf0; border-radius:7px; background:#eff6ff; color:#234062 !important; }
.pcon-guide-footer a,.pcon-onboarding-intro a { color:#1556aa !important; font-weight:800; }
@media(max-width:980px) { .pcon-guide-grid { grid-template-columns:1fr; } .pcon-guide-path > .pcon-btn,.pcon-guide-path > .pcon-guide-actions { margin-top:10px; } }

/* Acceso de MasterStudy abierto sobre Conecta. */
body.pcon-auth-opened { overflow:hidden; }
.pcon-auth-overlay[hidden] { display:none !important; }
.pcon-auth-overlay { position:fixed; z-index:999999; inset:0; display:grid; place-items:center; padding:18px; background:rgba(10,23,50,.72); overflow:auto; }
.pcon-auth-dialog { position:relative; width:min(100%,590px); max-height:calc(100vh - 36px); overflow:auto; padding:clamp(21px,4vw,36px); border:1px solid #d3dfed; border-radius:11px; background:#fff; color:#20334f; color-scheme:light; box-shadow:0 25px 80px rgba(5,21,51,.35); }
.pcon-auth-heading { margin:0 45px 20px 0; }
.pcon-auth-heading span { display:block; margin:0 0 8px; color:#24628e !important; font-size:11px; font-weight:850; letter-spacing:.12em; }
html body .pcon-auth-heading h2 { margin:0 0 6px; color:#152e63 !important; font-size:clamp(25px,4vw,32px); line-height:1.16; }
html body .pcon-auth-heading p { margin:0; color:#405674 !important; line-height:1.5; }
.pcon-auth-close { position:absolute; top:18px; right:18px; width:36px; height:36px; display:grid; place-items:center; padding:0; border:1px solid #ccd9e8; border-radius:6px; background:#f5f8fc; color:#193d66 !important; font:26px/1 sans-serif; cursor:pointer; }
.pcon-auth-close:hover,.pcon-auth-close:focus-visible { background:#e7f1ff; outline:2px solid #245caa; outline-offset:2px; }
.pcon-auth-dialog input:not([type="checkbox"]):not([type="radio"]),.pcon-auth-dialog select { color:#172a48; color-scheme:light; }
.pcon-profile-editor .pcon-optional-details { margin:15px 0; border:1px solid #d9e4f1; border-radius:9px; background:#f9fbff; padding:0 16px; }
.pcon-profile-editor .pcon-optional-details[open] { padding-bottom:16px; background:#fff; }
.pcon-profile-editor .pcon-optional-details > summary { cursor:pointer; padding:14px 2px; color:#183863; font-weight:800; }
.pcon-profile-editor .pcon-optional-details > summary small { color:#61758f; font-weight:600; }
.pcon-profile-editor .pcon-optional-details > summary:focus-visible { outline:3px solid #88acf2; outline-offset:2px; }
.pcon-profile-editor .pcon-optional-details label { margin-top:12px; }
.pcon-profile-editor .pcon-optional-details .pcon-check-grid label { margin-top:0; }
html body .pcon-wrap .pcon-trust-badge,html body .pcon-profile-page .pcon-trust-badge { display:inline-flex; align-items:center; width:fit-content; max-width:100%; padding:7px 11px; margin:5px 0; border-radius:6px; border:1px solid #b3c7e3; background:#e9f2ff; color:#173d7e !important; font-size:12px; font-weight:850; line-height:1.25; letter-spacing:.01em; }
html body .pcon-wrap .pcon-trust-badge.is-ally,html body .pcon-profile-page .pcon-trust-badge.is-ally { border-color:#be9856; background:linear-gradient(120deg,#152b53,#433765); color:#ffecc0 !important; box-shadow:0 5px 12px rgba(28,43,85,.17); }
html body .pcon-wrap .pcon-rail-body em.pcon-trust-badge { font-style:normal; font-size:10px; padding:4px 6px; margin:3px 0 0; }
.pcon-inclusion-panel { border-color:#bee8dc; }
.pcon-inclusion-panel ul { margin:14px 0; padding-left:22px; }
.pcon-inclusion-panel li { margin:5px 0; }
.pcon-inclusion-panel small { color:#5e7081; }
.pcon-job-card .pcon-inclusion-hint { width:fit-content; max-width:100%; padding:6px 9px; border:1px solid #a7d9ca; border-radius:6px; background:#ecfbf5; color:#075c4d !important; font-size:12px; font-weight:750; }
.pcon-inclusion-filter { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:-8px 0 22px; }
.pcon-inclusion-filter small { color:#556b7f; }
.pcon-inclusion-filter .is-active { border-color:#77bba5; background:#e7f7ef; color:#075c4d !important; }
