/* Comunidad Plan Social 1.9.0 — lenguaje visual institucional, sin alterar módulos heredados */
.gna-ps-wrap {
  --gna-primary: #6d2984;
  --gna-primary-dark: #4b2259;
  --gna-primary-soft: #f7f2f8;
  --gna-accent: #327a79;
  --gna-accent-soft: #eaf5f3;
  --gna-text: #272633;
  --gna-text-soft: #62616f;
  --gna-border: #e8e5eb;
  width: min(1600px, calc(100vw - 44px));
  max-width: none;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 0 44px;
  padding: clamp(14px, 2vw, 32px) clamp(8px, 2vw, 26px) 60px;
  background: #fff;
  font-family: system-ui,-apple-system,"Segoe UI",sans-serif !important;
  color: var(--gna-text);
}
.gna-ps-wrap :is(h1,h2,h3,h4,button,input,textarea,select,a) {font-family:inherit !important;}
.gna-ps-wrap :is(h1,h2,h3) {text-align:left;letter-spacing:-.025em;}
.gna-ps-hero {
  display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,.65fr);
  padding: clamp(28px,4vw,66px); gap:26px; border-radius:4px;
  background:#33293a; color:#fff; box-shadow:none;
  position:relative; overflow:hidden;
}
.gna-ps-hero:before {content:"";height:100%;width:5px;position:absolute;left:0;top:0;background:#a55abc;}
.gna-ps-hero h1 {font-size:clamp(31px,4.1vw,64px);line-height:1.1;max-width:850px;font-weight:740;}
.gna-ps-hero p {max-width:750px;font-size:clamp(15px,1.14vw,19px);line-height:1.7;opacity:.95;}
.gna-ps-hero-copy {align-items:flex-start;gap:8px;}
.gna-ps-hero .gna-ps-pill {margin-left:0;font-size:11px;letter-spacing:.12em;background:transparent;border:0;padding:0;color:#d6b1e0!important;}
.gna-ps-userbox {align-items:flex-start;text-align:left;gap:12px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.18);border-radius:4px;padding:clamp(18px,2.4vw,32px);}
.gna-ps-userbox .gna-ps-user-actions {align-items:flex-start;gap:9px;}
.gna-ps-tabs {justify-content:flex-start;margin:24px 0 28px;gap:6px;border-bottom:1px solid var(--gna-border);padding-bottom:12px;}
.gna-ps-tabs a {box-shadow:none;border:none;border-radius:4px;font-size:13px;background:transparent;color:#4a4650;min-height:40px;padding:9px 14px;}
.gna-ps-tabs a.active {background:#f1e8f3;color:#5d246e;border-bottom:2px solid #742c8b;}
.gna-ps-tabs a:hover {background:#f6f0f8;color:#5d246e;}
.gna-ps-wrap .gna-ps-card {border-radius:7px;box-shadow:none;border:1px solid var(--gna-border);padding:clamp(20px,2.2vw,36px);height:auto;}
.gna-ps-intro-card {background:#fbfafb;border-left:3px solid #86419a !important;}
.gna-ps-wrap .gna-ps-wide {margin-bottom:18px;}
.gna-ps-wrap .gna-ps-home-card {border-top:2px solid #e7d6ee;gap:16px;}
.gna-ps-wrap .gna-ps-home-card h3 {font-size:clamp(19px,1.35vw,23px);margin:0;}
.gna-ps-wrap .gna-ps-home-card p {font-size:14px;line-height:1.75;}
.gna-ps-wrap .gna-ps-grid {grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;}
.gna-ps-wrap :is(.gna-ps-activity-grid,.gna-ps-resource-grid) {grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px;}
.gna-ps-wrap .gna-ps-btn {border-radius:6px;box-shadow:none;background:#762a8e;color:#fff;min-height:42px;font-size:13px;font-weight:730;transition:background .18s ease,transform .18s ease,box-shadow .18s ease;}
.gna-ps-wrap .gna-ps-btn:hover {background:#5b236d;box-shadow:0 8px 20px rgba(80,28,96,.13);transform:translateY(-1px);}
.gna-ps-wrap .gna-ps-btn-light {background:#fff;color:#5a246e;border:1px solid #dbcde2;}
.gna-ps-wrap .gna-ps-btn-light:hover {background:#f8f2fa;color:#572269;}
.gna-ps-quick-links {display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0 23px !important;}
.gna-ps-quick-links a {display:inline-flex;max-width:100%;}
.gna-ps-wrap .gna-ps-stats-grid {gap:14px;}
.gna-ps-wrap :is(input,textarea,select) {border-radius:6px;}
.gna-ps-wrap :focus-visible {outline:3px solid #b577ca;outline-offset:3px;}
@media(max-width:850px) {
  .gna-ps-wrap {width:calc(100vw - 22px);padding:12px 4px 40px;}
  .gna-ps-hero {grid-template-columns:1fr;padding:30px 24px;gap:20px;}
  .gna-ps-userbox {padding:18px;}
}
@media(max-width:520px){
  .gna-ps-hero h1{font-size:34px;}
  .gna-ps-tabs a{font-size:12px;padding:9px 11px;}
}
@media(prefers-reduced-motion:reduce){.gna-ps-wrap *{transition:none!important;animation:none!important;}}

.gna-ps-brand-mark {display:flex;align-items:center;gap:15px;margin-bottom:8px;}
.gna-ps-brand-mark img {width:68px;height:68px;object-fit:contain;background:#fff;border-radius:5px;padding:5px;}
.gna-ps-brand-mark span {font-size:10px;letter-spacing:.15em;color:#dfd1e6!important;font-weight:780;line-height:1.5;}
@media(max-width:600px){.gna-ps-brand-mark img{width:56px;height:56px;}.gna-ps-brand-mark span{font-size:9px;}}

/* 1.9.1 · Rediseño institucional Plan Social: reemplaza la portada antigua sin tocar sus datos. */
.gna-ps-wrap {
  --gna-primary:#802a9d; --gna-primary-dark:#632179; --gna-primary-soft:#f8f3fa;
  --gna-text:#252333;--gna-border:#eae3ec;--gna-text-soft:#605d69;
  width:min(1720px,calc(100vw - 24px));padding:clamp(12px,1.3vw,24px) clamp(10px,2vw,30px) 70px;
}
.gna-ps-hero {
  background:#faf7fb; border:1px solid #eee4f1; border-radius:16px;
  color:#2c2433; padding:clamp(24px,2.7vw,48px);
  grid-template-columns:minmax(0,1.8fr) minmax(240px,.5fr); box-shadow:none;
}
.gna-ps-hero:before{background:#802a9d; width:4px;}
.gna-ps-hero h1 {color:#282033;font-size:clamp(30px,3.5vw,54px);letter-spacing:-.045em;}
.gna-ps-hero p {color:#625c68;opacity:1;font-size:clamp(15px,1.2vw,18px);}
.gna-ps-hero .gna-ps-pill {color:#802a9d !important;}
.gna-ps-brand-mark img{width:78px;height:78px;border:1px solid #eddfef;border-radius:14px;box-shadow:0 5px 14px rgba(61,31,78,.05);}
.gna-ps-brand-mark span {color:#6f4381!important;}
.gna-ps-userbox {background:#fff;color:#292331;border-color:#eadfeb;border-radius:12px;align-items:flex-start;box-shadow:none;}
.gna-ps-userbox strong,.gna-ps-userbox .gna-ps-small,.gna-ps-userbox .gna-ps-link {color:#342b3b;}
.gna-ps-wrap .gna-ps-btn {background:#802a9d;}
.gna-ps-wrap .gna-ps-btn:hover {background:#65227e;}
.gna-ps-wrap .gna-ps-btn-light {background:#fff;color:#802a9d;border:1px solid #d5b8dd;}
.gna-ps-wrap .gna-ps-btn-light:hover {background:#f7eef9;color:#5e1e78;}

/* Nueva home: componentes sobrios, editoriales y alineados con la marca. */
.gna-ps-wrap .gna-cps-home-hero,.gna-ps-wrap .gna-cps-section,.gna-ps-wrap .gna-cps-invitations{font-family:inherit;}
.gna-cps-kicker {display:block;font-weight:800;font-size:11px;line-height:1.5;letter-spacing:.16em;color:#802a9d;}
.gna-cps-home-hero {margin:26px 0 38px;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(160px,.45fr);align-items:center;min-height:290px;gap:25px;background:#fff;border-block:1px solid #e9e5eb;padding:clamp(24px,3vw,52px) clamp(4px,1.8vw,30px);}
.gna-cps-home-hero h2 {max-width:900px;color:#282032;font-size:clamp(32px,4vw,60px)!important;line-height:1.09!important;margin:14px 0 17px!important;font-weight:750;letter-spacing:-.045em;}
.gna-cps-home-hero p {max-width:780px;font-size:clamp(16px,1.25vw,20px);color:#5f5966;line-height:1.7;margin:0 0 22px;}
.gna-cps-hero-actions {display:flex;gap:20px;align-items:center;flex-wrap:wrap;}
.gna-ps-wrap a.gna-cps-cta {display:inline-flex;justify-content:center;align-items:center;gap:13px;min-height:52px;padding:12px 23px;border-radius:9px;background:#802a9d;color:#fff!important;font-weight:740;font-size:15px;text-decoration:none;transition:transform .18s,background .18s,box-shadow .18s;}
.gna-ps-wrap a.gna-cps-cta:hover {background:#67227e;transform:translateY(-2px);box-shadow:0 9px 21px rgba(100,30,120,.16);}
.gna-cps-text-link {font-weight:750;color:#802a9d!important;text-decoration:underline;text-underline-offset:4px;}
.gna-cps-hero-signet {display:flex;justify-content:center;align-items:center;min-height:200px;}
.gna-cps-hero-signet img {display:block;width:min(70%,170px);height:auto;object-fit:contain;opacity:.82;filter:drop-shadow(0 10px 18px rgba(129,42,156,.1));}
.gna-cps-section {margin-top:40px;padding-bottom:18px;}
.gna-cps-section-heading {display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;}
.gna-cps-section-heading h2 {color:#292331;font-size:clamp(26px,2.6vw,39px)!important;line-height:1.2;margin:6px 0 6px!important;}
.gna-cps-section-heading p {color:#6b6370;font-size:15px;margin:0;line-height:1.6;}
.gna-cps-counter {color:#6f6470;font-size:13px;padding-bottom:4px;white-space:nowrap;}
.gna-cps-event-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:18px;}
.gna-cps-event {display:flex;flex-direction:column;min-height:330px;padding:clamp(22px,1.9vw,33px);border:1px solid #e7e2e9;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(34,20,42,.035);}
.gna-cps-event-top {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:18px;}
.gna-cps-event-kind {color:#802a9d;font-size:12px;font-weight:800;}
.gna-cps-event-status {color:#2a7354;background:#e9f5ee;padding:5px 11px;border-radius:100px;font-size:11px;font-weight:730;}
.gna-cps-event h3 {margin:0 0 9px!important;font-size:clamp(24px,1.9vw,31px)!important;line-height:1.18;color:#282332;overflow-wrap:anywhere;}
.gna-cps-event-description {color:#645f6c;font-size:14px;line-height:1.64;margin:0 0 20px;}
.gna-cps-event-detail {display:grid;grid-template-columns:86px minmax(0,1fr);gap:15px;border-top:1px solid #f0ebf1;padding:9px 0;align-items:start;font-size:13px;line-height:1.5;}
.gna-cps-event-detail span{color:#827a85;}
.gna-cps-event-detail strong{color:#36303d;font-weight:650;}
.gna-ps-wrap a.gna-cps-event-register {margin-top:auto;display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #802a9d;border-radius:9px;background:#802a9d;color:#fff!important;padding:13px 17px;font-size:13px;line-height:1.35;font-weight:780;text-decoration:none;min-height:52px;transition:transform .2s,box-shadow .2s,background .2s;}
.gna-ps-wrap a.gna-cps-event-register:hover {background:#68217f;transform:translateY(-2px);box-shadow:0 8px 20px rgba(100,30,120,.19);}
.gna-cps-event-register span{font-size:21px;transition:transform .2s;flex-shrink:0;}
.gna-cps-event-register:hover span{transform:translateX(3px);}
.gna-cps-event-closed {margin-top:auto;background:#f3f0f3;color:#786f79;padding:14px;border-radius:9px;text-align:center;font-size:13px;font-weight:700;}
.gna-cps-empty {border:1px dashed #d7c8dd;padding:28px;border-radius:12px;background:#fdfbfe;color:#726777;line-height:1.6;}
.gna-cps-more-link {margin:16px 0 0;text-align:right;}
.gna-cps-more-link a {color:#802a9d!important;font-weight:750;text-decoration:none;}
.gna-cps-invitations {display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:55px;padding:clamp(28px,3vw,50px);background:#f8f3fa;border:1px solid #ede3f0;border-radius:16px;}
.gna-cps-invitations h2{margin:7px 0 12px!important;font-size:clamp(25px,2.5vw,38px)!important;color:#2c2432;line-height:1.14!important;}
.gna-cps-invitations p{margin:0;max-width:730px;color:#645b6a;line-height:1.64;}
.gna-cps-invitations .gna-cps-cta{flex-shrink:0;}
.gna-cps-history {margin-top:58px;}
.gna-cps-history-list {border-top:1px solid #e6e1e8;}
.gna-cps-history-row {display:grid;grid-template-columns:110px minmax(0,1fr) minmax(120px,210px);gap:20px;align-items:center;padding:17px 5px;border-bottom:1px solid #e9e4eb;}
.gna-cps-history-row strong {font-size:16px;color:#322b39;overflow-wrap:anywhere;}
.gna-cps-history-date,.gna-cps-history-kind {font-size:13px;color:#807781;}
.gna-cps-info {margin-top:60px;}
.gna-cps-faq {border-top:1px solid #e8e2ea;}
.gna-cps-faq-item {border-bottom:1px solid #e8e2ea;}
.gna-cps-faq-item summary {list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 5px;color:#332c39;font-size:16px;font-weight:720;cursor:pointer;}
.gna-cps-faq-item summary::-webkit-details-marker {display:none;}
.gna-cps-faq-item summary span {color:#802a9d;font-size:25px;font-weight:400;transition:transform .2s;}
.gna-cps-faq-item[open] summary span {transform:rotate(45deg);}
.gna-cps-faq-item p{color:#615b67;font-size:15px;line-height:1.7;max-width:950px;margin:0 0 20px 5px;}
.gna-cps-contact-line {display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;border-radius:13px;background:#faf8fb;border:1px solid #ece6ef;margin-top:22px;padding:20px 25px;}
.gna-cps-contact-line strong{color:#332839;font-weight:800;}
.gna-cps-contact-line p{margin:5px 0 0;font-size:14px;color:#79717c;}
.gna-cps-contact-line a {color:#802a9d!important;font-weight:750;word-break:break-word;}
.gna-cps-manager-entrance {margin:32px 0 0;}
.gna-cps-manager-entrance a {color:#802a9d!important;font-weight:720;}
@media(max-width:900px){.gna-cps-invitations{align-items:start;flex-direction:column}.gna-cps-history-row{grid-template-columns:100px minmax(0,1fr)}.gna-cps-history-kind{display:none}.gna-ps-hero{grid-template-columns:1fr}.gna-cps-home-hero{grid-template-columns:1fr}.gna-cps-hero-signet{display:none}}
@media(max-width:620px){.gna-ps-wrap{width:calc(100vw - 14px);padding:8px 4px 76px}.gna-ps-hero{padding:24px 20px}.gna-cps-section-heading{align-items:start;flex-direction:column;gap:9px}.gna-cps-home-hero{padding:23px 9px;min-height:0}.gna-cps-home-hero h2{font-size:36px!important}.gna-cps-hero-actions{align-items:stretch}.gna-cps-hero-actions a.gna-cps-cta{width:100%}.gna-cps-event-grid{grid-template-columns:1fr}.gna-cps-event{padding:22px}.gna-cps-event h3{font-size:26px!important}.gna-cps-invitations{padding:25px 19px}.gna-cps-invitations a.gna-cps-cta{width:100%}.gna-cps-history-row{gap:12px;grid-template-columns:83px minmax(0,1fr)}.gna-cps-history-row strong{font-size:14px}.gna-cps-contact-line{padding:18px}.gna-cps-contact-line a{font-size:14px}.gna-ps-brand-mark img{width:68px;height:68px}}
@media(prefers-reduced-motion:reduce){.gna-cps-event-register,.gna-cps-cta,.gna-cps-faq-item summary span{transition:none!important;}}

.gna-cps-header-actions{align-self:center;display:flex;align-items:flex-end;flex-direction:column;gap:12px;text-align:right;}
.gna-cps-header-actions span{font-size:11px;font-weight:770;letter-spacing:.13em;color:#82748a;text-transform:uppercase;}
.gna-cps-header-actions a{font-weight:760;color:#802a9d!important;text-decoration:none!important;font-size:14px;padding:11px 15px;border-radius:8px;background:#fff;border:1px solid #d9c6e0;white-space:nowrap;}
.gna-cps-header-actions a:hover{background:#f7eff9;}
@media(max-width:900px){.gna-cps-header-actions{align-items:flex-start;text-align:left;}}

/* Los estilos antiguos obligaban todo el texto del encabezado a blanco. En la portada nueva es oscuro. */
.gna-ps-wrap .gna-ps-hero :is(h1,p,strong,span) {color:#33283b!important;}
.gna-ps-wrap .gna-ps-hero .gna-ps-pill,.gna-ps-wrap .gna-ps-brand-mark span {color:#802a9d!important;}
.gna-ps-wrap .gna-ps-hero p {color:#625c68!important;}
.gna-ps-wrap .gna-cps-header-actions span{color:#83718a!important;}
.gna-ps-wrap .gna-ps-hero--simple {
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  padding:22px clamp(20px,2.7vw,40px);border-radius:12px;
}
.gna-ps-wrap .gna-ps-hero--simple .gna-ps-hero-copy{min-width:0;gap:0;}
.gna-ps-wrap .gna-ps-hero--simple .gna-ps-pill,.gna-ps-wrap .gna-ps-hero--simple p{display:none;}
.gna-ps-wrap .gna-ps-hero--simple h1 {font-size:clamp(23px,2.5vw,37px);margin:5px 0 0;line-height:1.12;}
.gna-ps-wrap .gna-ps-hero--simple .gna-ps-brand-mark{margin:0 0 3px;gap:14px;}
.gna-ps-wrap .gna-ps-hero--simple .gna-ps-brand-mark img{height:62px;width:62px;border-radius:11px;}
.gna-ps-wrap .gna-ps-hero--simple .gna-ps-brand-mark span{font-size:9px;letter-spacing:.115em;}
@media(max-width:640px){.gna-ps-wrap .gna-ps-hero--simple{padding:19px 16px;gap:16px;align-items:flex-start}.gna-ps-wrap .gna-ps-hero--simple h1{font-size:26px}.gna-ps-wrap .gna-ps-hero--simple .gna-ps-brand-mark img{width:52px;height:52px}.gna-cps-header-actions{align-self:start;justify-content:end}.gna-cps-header-actions span{display:none}.gna-cps-header-actions a{font-size:11px;padding:8px;border-radius:7px;white-space:normal;max-width:92px;line-height:1.4;text-align:center}}

/* 1.9.2: portada sin enlace visible de gestión; panel solo por URL directa. */
.gna-ps-wrap .gna-ps-hero--simple {justify-content:flex-start;}


/* 1.9.5 — portada pública concentrada en la acción y agenda compacta por año */
.gna-ps-wrap .gna-cps-home-hero--compact {display:block;min-height:0;margin:22px 0 30px;background:#faf7fb;border:1px solid #eee4f1;border-radius:14px;padding:clamp(25px,3vw,50px);}
.gna-ps-wrap .gna-cps-home-hero--compact .gna-cps-hero-content {max-width:1000px;}
.gna-ps-wrap .gna-cps-home-hero--compact h2 {font-size:clamp(31px,3.3vw,51px)!important;line-height:1.1!important;margin:9px 0 13px!important;}
.gna-ps-wrap .gna-cps-home-hero--compact p {font-size:clamp(15px,1.1vw,18px);margin:0 0 15px;line-height:1.5;}
.gna-cps-featured {display:flex;flex-direction:column;gap:4px;border-left:3px solid #802a9d;margin:18px 0;padding:4px 0 4px 16px;}
.gna-cps-featured>span {font-size:10px;font-weight:790;letter-spacing:.1em;color:#7b548a;}
.gna-cps-featured strong {font-size:clamp(17px,1.4vw,22px);line-height:1.32;color:#312338;}
.gna-cps-featured small {font-size:12px;color:#6f6576;}
.gna-ps-wrap .gna-cps-section--compact {margin-top:22px;padding-bottom:0;}
.gna-cps-year-tabs {display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 22px;}
.gna-cps-year-tabs a {display:inline-flex;gap:12px;align-items:center;background:#fff;border:1px solid #e7daec;border-radius:25px;padding:9px 16px;color:#792891!important;font-weight:780;font-size:13px;text-decoration:none!important;}
.gna-cps-year-tabs a:hover {background:#f8f0fb;}
.gna-cps-year-tabs span {font-size:11px;color:#89718e;}
.gna-cps-year-details {border:1px solid #e9e2ec;border-radius:13px;margin:13px 0 18px;background:#fff;overflow:hidden;scroll-margin-top:100px;}
.gna-cps-year-details>summary {cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:19px 24px;background:#fbf8fc;}
.gna-cps-year-details>summary::-webkit-details-marker {display:none;}
.gna-cps-year-details>summary>span:first-child {display:flex;flex-direction:column;gap:4px;}
.gna-cps-year-details summary small {color:#83638b;font-size:10px;font-weight:800;letter-spacing:.1em;}
.gna-cps-year-details summary strong {color:#33263b;font-size:clamp(19px,1.6vw,27px);}
.gna-cps-year-total {font-size:12px;color:#745e7a;white-space:nowrap;}
.gna-cps-year-total span {margin-left:10px;font-size:19px;display:inline-block;transition:transform .2s;}
.gna-cps-year-details[open] .gna-cps-year-total span {transform:rotate(180deg);}
.gna-cps-event-list {padding:0 23px;}
.gna-cps-event-row {display:grid;grid-template-columns:80px minmax(0,1fr) minmax(135px,185px);gap:22px;align-items:center;padding:19px 0;border-top:1px solid #eee8f0;}
.gna-cps-event-date {display:flex;flex-direction:column;gap:2px;align-items:center;border-right:1px solid #eee5ef;padding-right:14px;color:#802a9d;}
.gna-cps-event-date strong {font-size:36px;line-height:1.1;}
.gna-cps-event-date span {font-size:11px;color:#817286;}
.gna-cps-event-row-content {min-width:0;}
.gna-cps-event-row-content h3 {margin:3px 0!important;font-size:clamp(17px,1.35vw,22px)!important;line-height:1.2!important;color:#302738;overflow-wrap:anywhere;}
.gna-cps-event-row-content p {margin:7px 0 0;font-size:12px;color:#746a78;line-height:1.5;}
.gna-cps-event-row .gna-cps-event-kind {font-size:10px;letter-spacing:.08em;color:#802a9d;font-weight:750;}
.gna-ps-wrap a.gna-cps-event-action {display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff!important;text-decoration:none!important;background:#802a9d;border-radius:9px;font-size:13px;font-weight:800;padding:13px 14px;min-height:44px;transition:transform .16s,background .16s;}
.gna-ps-wrap a.gna-cps-event-action:hover {background:#66217c;transform:translateY(-1px);}
.gna-cps-event-action span {font-size:18px;}
.gna-ps-wrap .gna-cps-event-action--closed {display:block;background:#f4f1f5;color:#827987;text-align:center;padding:11px;border-radius:9px;font-size:12px;}
.gna-cps-year-footer {padding:13px 23px;background:#fcfbfd;border-top:1px solid #eee8f0;text-align:right;}
.gna-cps-year-footer a {font-size:12px;font-weight:760;color:#802a9d!important;}
.gna-ps-wrap .gna-cps-invitations--compact {margin-top:33px;padding:clamp(21px,2.5vw,36px);border-radius:12px;}
.gna-ps-wrap .gna-cps-invitations--compact h2 {font-size:clamp(22px,2vw,31px)!important;}
.gna-ps-wrap .gna-cps-invitations--compact p {font-size:13px;}
.gna-ps-wrap .gna-cps-history {margin-top:30px;}
.gna-ps-wrap .gna-cps-info {margin-top:36px;}
@media(max-width:720px){.gna-cps-event-row{grid-template-columns:62px minmax(0,1fr);gap:13px;}.gna-cps-event-row .gna-cps-event-action{grid-column:1/-1;}.gna-cps-event-list{padding:0 15px;}.gna-cps-year-details>summary{padding:16px;}.gna-cps-year-total{white-space:normal;text-align:right;}.gna-ps-wrap .gna-cps-invitations--compact{align-items:flex-start;}.gna-cps-event-date strong{font-size:29px;}}
@media(prefers-reduced-motion:reduce){.gna-cps-year-total span,.gna-cps-event-action{transition:none!important;}}

/* 1.9.6 — acciones en el encabezado, agenda condensada y ventana de encuentros. */
.gna-ps-wrap .gna-ps-hero--simple {justify-content:space-between;align-items:center;flex-wrap:nowrap;}
.gna-ps-wrap .gna-cps-header-actions {margin-left:auto;display:flex;flex-direction:row;gap:11px;align-items:center;text-align:left;flex-wrap:wrap;justify-content:flex-end;min-width:0;}
.gna-ps-wrap .gna-cps-header-actions :is(a,button) {box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 17px;border:1px solid #802a9d;border-radius:9px;font-family:inherit!important;font-size:13px;font-weight:750;line-height:1.35;text-decoration:none!important;cursor:pointer;transition:background .18s ease,transform .18s ease;white-space:normal;max-width:none;}
.gna-ps-wrap .gna-cps-header-actions .gna-cps-header-all {background:#802a9d;color:#fff!important;}
.gna-ps-wrap .gna-cps-header-actions .gna-cps-header-all:hover {background:#682080;transform:translateY(-1px);}
.gna-ps-wrap .gna-cps-header-actions .gna-cps-header-next {background:#fff;color:#802a9d!important;}
.gna-ps-wrap .gna-cps-header-actions .gna-cps-header-next:hover {background:#f6eef8;transform:translateY(-1px);}
.gna-ps-wrap .gna-cps-header-actions :is(a,button) span {color:inherit!important;font-size:17px;}
.gna-cps-home-agenda {background:#fff;border:1px solid #e8e1ec;border-radius:16px;margin:22px 0 28px;padding:clamp(24px,3.1vw,44px);}
.gna-cps-home-agenda-head {display:flex;gap:22px;align-items:end;justify-content:space-between;margin-bottom:26px;}
.gna-ps-wrap .gna-cps-home-agenda-head h2 {font-size:clamp(30px,3.4vw,51px)!important;color:#2f2537;line-height:1.1!important;letter-spacing:-.045em;margin:9px 0 10px!important;}
.gna-cps-home-agenda-head p {margin:0;font-size:clamp(14px,1.1vw,17px);line-height:1.65;color:#6e6373;}
.gna-cps-home-count {color:#75268c;background:#f8f3fa;border:1px solid #eadeee;border-radius:30px;padding:9px 14px;font-size:12px;font-weight:740;white-space:nowrap;}
.gna-cps-home-feature {display:grid;grid-template-columns:108px minmax(0,1fr) 172px;align-items:center;gap:24px;border-top:1px solid #eae4ed;border-bottom:1px solid #eae4ed;padding:24px 0;}
.gna-cps-home-feature-date {display:flex;flex-direction:column;gap:3px;align-items:start;border-right:1px solid #eee6ef;}
.gna-cps-home-feature-date>span {font-size:9px;font-weight:800;letter-spacing:.10em;color:#957e9c;}
.gna-cps-home-feature-date strong {font-size:46px;line-height:1.05;font-weight:740;color:#802a9d;}
.gna-cps-home-feature-date small {font-size:13px;color:#5b4c62;font-weight:750;text-transform:uppercase;}
.gna-cps-home-feature-body{min-width:0;}
.gna-ps-wrap .gna-cps-home-feature-body h3 {font-size:clamp(19px,1.8vw,29px)!important;color:#33243b;margin:7px 0!important;overflow-wrap:anywhere;}
.gna-cps-home-feature-body p {margin:0;color:#726879;font-size:13px;line-height:1.6;}
.gna-ps-wrap a.gna-cps-home-feature-action {display:inline-flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;background:#802a9d;color:#fff!important;font-size:14px;font-weight:800;text-decoration:none!important;border-radius:9px;}
.gna-ps-wrap a.gna-cps-home-feature-action:hover {background:#63207a;}
.gna-cps-home-agenda-foot {display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:19px;color:#716575;font-size:12px;}
.gna-cps-home-agenda-foot a{color:#802a9d!important;font-weight:780;text-decoration:none!important;white-space:nowrap;}
.gna-cps-home-empty {border-top:1px solid #eae4ed;border-bottom:1px solid #eae4ed;background:#fbf8fc;padding:27px 24px;}
.gna-cps-home-empty strong{display:block;color:#35293d;font-size:20px;}
.gna-cps-home-empty p{margin:7px 0 0;color:#716677;font-size:14px;}
/* WordPress a menudo aplica reglas globales a dialog: restringimos estilos al componente. */
.gna-ps-wrap dialog.gna-cps-dialog {box-sizing:border-box;position:fixed;inset:0;width:min(760px,calc(100vw - 28px));max-width:760px;max-height:min(83dvh,800px);margin:auto;padding:0;border:1px solid #e6dceb;border-radius:17px;box-shadow:0 25px 85px rgba(35,18,47,.3);overflow:auto;color:#33283b;background:#fff;}
.gna-ps-wrap dialog.gna-cps-dialog:not([open]) {display:none!important;}
.gna-ps-wrap dialog.gna-cps-dialog::backdrop {background:rgba(26,17,31,.62);backdrop-filter:blur(3px);}
.gna-cps-dialog-head {position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:start;gap:14px;background:#fbf7fc;padding:26px 30px 21px;border-bottom:1px solid #e9e2ed;}
.gna-ps-wrap .gna-cps-dialog-head h2 {font-size:clamp(23px,3vw,32px)!important;margin:8px 0 5px!important;line-height:1.15!important;color:#31263a;}
.gna-cps-dialog-head p{font-size:13px;color:#776b7a;margin:0;}
.gna-ps-wrap button.gna-cps-dialog-close {display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;background:#fff;color:#6b5175;border:1px solid #e4d9e8;border-radius:50%;font-size:29px;line-height:1;cursor:pointer;}
.gna-ps-wrap button.gna-cps-dialog-close:hover {background:#efe6f2;}
.gna-cps-dialog-body{padding:5px 30px 20px;}
.gna-cps-dialog-year {font-size:12px!important;letter-spacing:.08em;color:#802a9d!important;font-weight:800!important;padding:20px 0 5px;margin:0!important;text-transform:uppercase;}
.gna-cps-dialog-event {display:grid;grid-template-columns:55px minmax(0,1fr) 122px;gap:17px;align-items:center;border-bottom:1px solid #eee8f0;padding:17px 0;}
.gna-cps-dialog-date{display:flex;flex-direction:column;align-items:flex-start;color:#802a9d;}
.gna-cps-dialog-date strong{font-size:30px;line-height:1;font-weight:760;}
.gna-cps-dialog-date span{font-size:11px;text-transform:uppercase;color:#71637a;}
.gna-cps-dialog-details{min-width:0;}
.gna-cps-dialog-details h4 {font-size:16px!important;color:#34283c!important;line-height:1.35!important;overflow-wrap:anywhere;margin:0 0 5px!important;}
.gna-cps-dialog-details p {margin:0;font-size:12px;color:#756a78;line-height:1.5;overflow-wrap:anywhere;}
.gna-ps-wrap a.gna-cps-dialog-register {display:inline-flex;justify-content:space-between;align-items:center;gap:6px;padding:11px 12px;background:#802a9d;color:#fff!important;border-radius:8px;text-decoration:none!important;font-size:12px;font-weight:800;}
.gna-ps-wrap a.gna-cps-dialog-register:hover{background:#602073;}
.gna-cps-dialog-unavailable {font-size:11px;text-align:center;color:#776c7b;background:#f5f1f5;border-radius:7px;padding:10px 7px;}
.gna-cps-dialog-foot {position:sticky;bottom:0;background:#fff;border-top:1px solid #eae3eb;padding:17px 30px;display:flex;justify-content:flex-end;}
.gna-cps-dialog-foot a {color:#802a9d!important;font-weight:780;text-decoration:none!important;}
.gna-cps-dialog-empty{padding:35px 0;color:#6e6271;text-align:center;}
.gna-cps-dialog-limit {color:#746879;font-size:12px;margin-top:15px;}
@media(max-width:1050px){.gna-ps-wrap .gna-ps-hero--simple{flex-wrap:wrap;}.gna-ps-wrap .gna-cps-header-actions{margin-left:0;justify-content:flex-start;}}
@media(max-width:640px){
  .gna-ps-wrap .gna-ps-hero--simple{gap:14px;}
  .gna-ps-wrap .gna-cps-header-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:9px;}
  .gna-ps-wrap .gna-cps-header-actions :is(a,button){max-width:none;min-height:52px;width:100%;font-size:12px;padding:9px 8px;}
  .gna-cps-home-agenda{padding:22px 17px;}
  .gna-cps-home-agenda-head{align-items:flex-start;flex-direction:column;gap:11px;}
  .gna-cps-home-count{font-size:11px;}
  .gna-cps-home-feature{grid-template-columns:62px minmax(0,1fr);gap:12px;padding:19px 0;}
  .gna-cps-home-feature-date strong{font-size:35px;}
  .gna-cps-home-feature-date>span{font-size:8px;}
  .gna-ps-wrap a.gna-cps-home-feature-action{grid-column:1/-1;width:100%;}
  .gna-cps-home-agenda-foot{align-items:flex-start;flex-direction:column;gap:9px;}
  .gna-cps-dialog-head{padding:22px 17px 18px;}
  .gna-cps-dialog-body{padding:5px 17px 15px;}
  .gna-cps-dialog-event{grid-template-columns:44px minmax(0,1fr);gap:10px;}
  .gna-cps-dialog-event :is(.gna-cps-dialog-register,.gna-cps-dialog-unavailable){grid-column:1/-1;width:100%;}
  .gna-cps-dialog-foot{padding:15px 17px;}
}
@media(prefers-reduced-motion:reduce){.gna-cps-header-actions :is(a,button){transition:none!important;}}
