/* ==========================================================================
   Centro de ayuda Prana — estilos del tema
   Todo color, radio y sombra sale de tokens.css (var(--…)). Sin literales.
   Puntos de corte: 1180 menú · 1100 índice de guía · 900 Pranita
                    744 buscador móvil · 640 filas de guía · 420 marca
   ========================================================================== */

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { color-scheme: light; -webkit-text-size-adjust: 100%; scroll-padding-top: 88px; }
html[data-theme="dark"] { color-scheme: dark; }
html, body { margin: 0; background: var(--background-default-20); }
body { font-family: var(--font-family); color: var(--content-default-high); -webkit-tap-highlight-color: transparent; min-height: 100vh; display: flex; flex-direction: column; }
img { max-width: 100%; height: auto; }
a { color: var(--content-link); text-decoration: none; }
button { font-family: var(--font-family); border: none; background: none; cursor: pointer; padding: 0; color: inherit; text-align: inherit; }
input, textarea { font-family: var(--font-family); }
input::placeholder, textarea::placeholder { color: var(--content-default-med); opacity: 1; }
*:focus-visible { outline: 2px solid var(--border-focus); outline-offset: 2px; }
button, a, input, textarea { transition: background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease, opacity .18s ease; }
button:active { transform: scale(.985); }
i.ph, i.ph-fill { transition: transform .22s ease, color .18s ease; line-height: 1; }
[hidden] { display: none !important; }
h1, h2, h3, p { margin: 0; }
.ph-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.ph-skip { position: absolute; left: 16px; top: -100px; z-index: 300; padding: 10px 16px; border-radius: var(--radius-s); background: var(--background-accent); color: var(--content-inverse-high); }
.ph-skip:focus { top: 12px; }

@keyframes omFadeUp { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes omFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes omPop { from { opacity: 0; transform: translateY(-8px) scale(.98); } to { opacity: 1; transform: none; } }

/* Interlineados del prototipo (texto corrido ≥ 1.5) */
.type-body-s, .type-body-m { line-height: 1.6; }
.type-body-l { line-height: 1.7; }
[class*="type-text-"] { line-height: 1.4; }
.type-title-l, .type-title-m { line-height: 1.25; }
.type-title-s { line-height: 1.35; }

.ph-muted { color: var(--content-default-med); }
.ph-pad { padding-left: clamp(16px, 2.5vw, 40px); padding-right: clamp(16px, 2.5vw, 40px); }

/* ---------- Componentes del sistema ---------- */
.ph-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 16px; border-radius: var(--radius-s); font-family: var(--font-family); font-size: var(--font-size-14); font-weight: var(--font-weight-semibold); line-height: 14px; white-space: nowrap; cursor: pointer; text-decoration: none; min-height: 40px; }
.ph-btn--s { padding: 8px 12px; min-height: 32px; }
.ph-btn--primary { background: var(--background-accent); color: var(--content-inverse-high); border: 1px solid var(--border-selected); box-shadow: var(--shadow-s); }
.ph-btn--secondary { background: var(--background-default-10); color: var(--content-default-med); border: 1px solid var(--border-default-high); box-shadow: var(--shadow-s); }
.ph-btn--ghost { background: transparent; color: var(--content-default-med); border: 1px solid transparent; }
.ph-btn:disabled, .ph-btn[aria-disabled="true"] { background: var(--background-default-30); color: var(--content-disabled); border: 1px solid var(--border-disabled); box-shadow: none; cursor: not-allowed; }
.ph-btn--primary:visited, .ph-btn--primary:hover { color: var(--content-inverse-high); }

.ph-badge, .ph-tag { display: inline-flex; align-items: center; gap: 4px; font-size: var(--font-size-12); font-weight: var(--font-weight-medium); line-height: 1.4; border: 1px solid; white-space: nowrap; }
.ph-badge { padding: 2px 10px; border-radius: var(--radius-full); }
.ph-badge::before { content: ""; width: 6px; height: 6px; border-radius: var(--radius-full); background: currentColor; }
.ph-tag { padding: 2px 8px; border-radius: var(--radius-xs); }
.ph-tone-success { background: var(--background-success-med); border-color: var(--border-success-low); color: var(--content-success); }
.ph-tone-neutral { background: var(--background-default-20); border-color: var(--border-default-high); color: var(--content-default-med); }

.ph-alert { display: flex; align-items: flex-start; gap: 12px; padding: 16px; background: var(--background-info-med); border: 1px solid var(--border-info); border-radius: var(--radius-s); color: var(--content-default-high); }
.ph-alert > i { font-size: 16px; color: var(--content-info); margin-top: 4px; flex-shrink: 0; }

.ph-card { background: var(--background-default-10); border: 1px solid var(--border-default-med); border-radius: var(--radius-s); }
.ph-chip { width: 40px; height: 40px; flex-shrink: 0; border-radius: var(--radius-m); background: var(--background-info-med); border: 1px solid var(--border-info); display: flex; align-items: center; justify-content: center; }
.ph-chip i { font-size: 16px; color: var(--content-link); }
.ph-num { width: 28px; height: 28px; flex-shrink: 0; border-radius: var(--radius-full); background: var(--background-info-med); border: 1px solid var(--border-info); display: flex; align-items: center; justify-content: center; color: var(--content-link); }

.ph-pill { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border-radius: var(--radius-full); border: 1px solid var(--border-default-high); background: var(--background-default-10); color: var(--content-default-med); font-size: var(--font-size-14); font-weight: var(--font-weight-medium); line-height: 1.4; white-space: nowrap; }
.ph-pill[aria-pressed="true"] { background: var(--background-accent); border-color: var(--border-selected); color: var(--content-inverse-high); }
.ph-pill--soft[aria-pressed="true"] { background: var(--background-info-med); border-color: var(--border-selected); color: var(--content-link); }

.ph-crumbs { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.ph-crumbs a { display: inline-flex; align-items: center; min-height: 36px; color: var(--content-link); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--border-info); }
.ph-crumbs i { font-size: 14px; color: var(--content-default-med); }
.ph-crumbs [aria-current] { color: var(--content-default-high); }

.ph-acc { display: flex; flex-direction: column; }
.ph-acc details + details { border-top: 1px solid var(--border-default-med); }
.ph-acc summary { list-style: none; display: flex; align-items: center; gap: 12px; padding: 16px; cursor: pointer; min-height: 44px; }
.ph-acc summary::-webkit-details-marker { display: none; }
.ph-acc summary span { flex: 1; color: var(--content-default-high); }
.ph-acc summary i { font-size: 16px; color: var(--content-default-med); }
.ph-acc details[open] summary i { transform: rotate(180deg); }
.ph-acc .ph-acc-body { margin: 0; padding: 0 16px 16px; color: var(--content-default-med); max-width: 70ch; animation: omFadeUp .22s ease-out; }

/* ---------- Cabecera ---------- */
.ph-header { position: sticky; top: 0; z-index: 60; flex-shrink: 0; height: 72px; display: flex; align-items: center; gap: clamp(8px, 1.6vw, 24px); padding: 0 clamp(12px, 2.5vw, 40px); background: var(--background-default-10); border-bottom: 1px solid var(--border-default-med); }
.ph-brand { display: flex; align-items: center; gap: 12px; flex-shrink: 0; min-height: 44px; color: var(--content-default-med); }
.ph-brand img { height: 24px; width: auto; display: block; }
.ph-brand-sep { width: 1px; height: 20px; background: var(--border-default-high); }
.ph-brand-label { white-space: nowrap; }
[data-theme="dark"] .ph-logo-light, :root:not([data-theme="dark"]) .ph-logo-dark { display: none; }
.ph-nav { display: none; align-items: center; gap: 4px; }
.ph-nav a { padding: 8px 12px; border-radius: var(--radius-s); color: var(--content-default-med); white-space: nowrap; }
.ph-spacer { flex: 1; }
.ph-header-search { display: none; align-items: center; gap: 8px; padding: 8px 12px; width: min(280px, 30vw); border: 1px solid var(--border-default-high); border-radius: var(--radius-s); background: var(--background-default-10); }
.ph-header-search i { font-size: 16px; color: var(--content-default-med); }
.ph-header-search span:first-of-type { flex: 1; color: var(--content-default-med); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ph-header-search kbd { font-family: var(--font-family); font-size: var(--font-size-12); color: var(--content-default-med); }
.ph-header-cta { display: none; align-items: center; gap: 8px; flex-shrink: 0; }
.ph-icon-btn { width: 44px; height: 44px; flex-shrink: 0; border-radius: var(--radius-s); display: flex; align-items: center; justify-content: center; border: 1px solid var(--border-default-high); color: var(--content-default-high); }
.ph-icon-btn i { font-size: 16px; }

.ph-switch { flex-shrink: 0; height: 44px; display: flex; align-items: center; padding: 0 2px; }
.ph-switch-track { position: relative; width: 64px; height: 32px; border-radius: var(--radius-full); background: var(--background-default-30); border: 1px solid var(--border-default-high); display: flex; align-items: center; justify-content: space-between; padding: 0 8px; }
.ph-switch-knob { position: absolute; top: 3px; left: 3px; width: 24px; height: 24px; border-radius: var(--radius-full); background: var(--background-default-10); box-shadow: var(--shadow-s); transition: transform .26s cubic-bezier(.2,.8,.2,1); }
.ph-switch-track i { position: relative; font-size: 14px; color: var(--content-default-med); }
.ph-switch-track .ph-sun { color: var(--content-link); }
[data-theme="dark"] .ph-switch-knob { transform: translateX(32px); }
[data-theme="dark"] .ph-switch-track .ph-sun { color: var(--content-default-med); }
[data-theme="dark"] .ph-switch-track .ph-moon { color: var(--content-link); }
.ph-header > .ph-switch { display: none; }

.ph-menu-backdrop { position: absolute; top: 100%; left: 0; right: 0; height: 100vh; z-index: 58; background: var(--background-overlay); animation: omFade .18s ease-out; }
.ph-menu { position: absolute; top: 100%; left: 0; right: 0; z-index: 59; max-height: calc(100vh - 72px); overflow-y: auto; display: flex; flex-direction: column; gap: 4px; padding: 8px clamp(12px, 2.5vw, 40px) 16px; background: var(--background-default-10); border-bottom: 1px solid var(--border-default-med); box-shadow: var(--shadow-m); animation: omPop .22s cubic-bezier(.2,.8,.2,1); }
.ph-menu > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 0 12px; border-radius: var(--radius-s); color: var(--content-default-high); }
.ph-menu > a i { font-size: 16px; color: var(--content-default-med); }
.ph-menu-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 12px 12px 0; margin-top: 4px; border-top: 1px solid var(--border-default-med); }
.ph-menu-theme { display: flex; align-items: center; gap: 12px; padding: 16px 12px 4px; }
.ph-menu-theme label { color: var(--content-default-med); }

@media (min-width: 1180px) {
  .ph-header { height: 64px; }
  .ph-nav, .ph-header-cta { display: flex; }
  .ph-header > .ph-switch { display: flex; }
  .ph-compact, .ph-menu, .ph-menu-backdrop { display: none !important; }
  body:not(.view-home) .ph-header-search { display: flex; }
}
@media (max-width: 419px) { .ph-brand-sep, .ph-brand-label { display: none; } }

/* ---------- Estructura con Pranita ---------- */
.ph-shell { flex: 1 0 auto; display: flex; align-items: stretch; min-width: 0; }
.ph-content { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.ph-main { flex: 1; }

/* ---------- Inicio ---------- */
.ph-hero { position: relative; overflow: hidden; isolation: isolate; background: var(--background-contast); padding: clamp(40px, 6vw, 80px) clamp(16px, 2.5vw, 40px); }
.ph-hero-glow { position: absolute; top: 0; left: 0; z-index: 0; width: 380px; height: 380px; border-radius: var(--radius-full); background: var(--background-accent); filter: blur(90px); opacity: 0; pointer-events: none; transform: translate(-9999px, -9999px); transition: opacity .4s ease, transform .5s cubic-bezier(.2,.8,.2,1); will-change: transform, opacity; }
.ph-hero-in { position: relative; z-index: 1; max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.ph-hero h1 { color: var(--content-inverse-high); text-wrap: balance; }
.ph-hero p { color: var(--content-inverse-med); max-width: 60ch; text-wrap: pretty; }
.ph-hero-search { text-align: left; width: 100%; display: flex; align-items: center; gap: 12px; padding: clamp(12px, 2vw, 16px) clamp(16px, 2vw, 20px); border-radius: var(--radius-m); background: var(--background-default-10); border: 1px solid var(--border-default-high); box-shadow: var(--shadow-m); }
.ph-hero-search i { font-size: 16px; color: var(--content-default-med); }
.ph-hero-search span { flex: 1; min-width: 0; color: var(--content-default-med); }
.ph-hero-search kbd { font-family: var(--font-family); padding: 4px 8px; border-radius: var(--radius-xs); background: var(--background-default-20); color: var(--content-default-med); }
.ph-popular { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.ph-popular > span { color: var(--content-inverse-med); }
.ph-popular div { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }
.ph-popular a { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px; border-radius: var(--radius-full); border: 1px solid var(--content-inverse-med); color: var(--content-inverse-high); white-space: nowrap; }

.ph-home { padding: 40px clamp(16px, 2.5vw, 40px) 56px; display: flex; flex-direction: column; gap: 48px; }
.ph-section { display: flex; flex-direction: column; gap: 16px; }
.ph-section-head { display: flex; flex-direction: column; gap: 8px; }
.ph-section-head h2 { color: var(--content-default-high); }
.ph-section-head p { color: var(--content-default-med); }
.ph-row-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; }

.ph-tabs { display: flex; gap: 4px; padding: 4px; max-width: 100%; overflow-x: auto; border-radius: var(--radius-m); background: var(--background-default-30); }
.ph-tabs button { padding: 8px 14px; min-height: 36px; border-radius: var(--radius-s); color: var(--content-default-med); white-space: nowrap; }
.ph-tabs button[aria-selected="true"] { background: var(--background-default-10); color: var(--content-default-high); box-shadow: var(--shadow-s); }

.ph-recs { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap: 12px; list-style: none; margin: 0; padding: 0; }
.ph-rec { height: 100%; display: flex; flex-direction: column; gap: 12px; padding: 16px; }
.ph-rec-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.ph-rec-title { color: var(--content-default-high); line-height: 1.3; }
.ph-rec-mod { color: var(--content-default-med); display: flex; align-items: center; gap: 6px; margin-top: auto; }
.ph-rec-mod i:first-child { font-size: 14px; }
.ph-rec-mod span { flex: 1; min-width: 0; }
.ph-rec-mod .ph-arrow { font-size: 16px; color: var(--content-link); }

.ph-cats { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.ph-modgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); gap: 12px; }
.ph-modcard { display: flex; flex-direction: column; gap: 12px; padding: 16px; }
.ph-modcard-head { display: flex; align-items: flex-start; gap: 12px; }
.ph-modcard-head > span:last-child { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.ph-modcard-name { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; color: var(--content-default-high); }
.ph-modcard-desc { color: var(--content-default-med); }
.ph-modcard-list { display: flex; flex-direction: column; border-top: 1px solid var(--border-default-med); padding-top: 4px; list-style: none; margin: 0; padding-left: 0; }
.ph-modcard-list a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 0; color: var(--content-default-high); }
.ph-modcard-list a > i:first-child { font-size: 14px; color: var(--content-default-med); }
.ph-modcard-list a > span { flex: 1; min-width: 0; }
.ph-modcard-list a > i:last-child { font-size: 16px; flex-shrink: 0; color: var(--content-default-med); }
.ph-cta-link { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 4px; margin: auto 0 -8px -4px; border-radius: var(--radius-s); color: var(--content-link); }
.ph-cta-link i { font-size: 14px; }
.ph-modtoggle { display: none; justify-content: center; }
.ph-modtoggle button { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: var(--radius-full); background: var(--background-default-10); border: 1px solid var(--border-default-high); color: var(--content-default-high); white-space: nowrap; }
.ph-modtoggle i { font-size: 16px; }
.ph-modtoggle button[aria-expanded="true"] i { transform: rotate(180deg); }
@media (max-width: 1179px) {
  .ph-modgrid.is-collapsible + .ph-modtoggle { display: flex; }
}
@media (min-width: 744px) and (max-width: 1179px) { .ph-modgrid.is-collapsed .x6 { display: none; } }
@media (max-width: 743px) { .ph-modgrid.is-collapsed .x5 { display: none; } }

.ph-two { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(420px, 100%), 1fr)); gap: 24px; align-items: start; }
.ph-news { display: flex; align-items: flex-start; gap: 12px; padding: 16px; }
.ph-news .ph-chip { background: var(--background-success-med); border-color: var(--border-success-low); }
.ph-news .ph-chip i { color: var(--content-success); }
.ph-news > span:nth-child(2) { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.ph-news-kicker { color: var(--content-success); }
.ph-news-title { color: var(--content-default-high); }
.ph-news-text { color: var(--content-default-med); }
.ph-caret { font-size: 16px; color: var(--content-default-med); flex-shrink: 0; align-self: center; }

.ph-support { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 12px; }
.ph-support-item { display: flex; align-items: center; gap: 12px; padding: 16px; text-align: left; width: 100%; }
.ph-support-item > span:nth-child(2) { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.ph-support-item .ph-title { color: var(--content-default-high); }
.ph-support-item .ph-meta { color: var(--content-default-med); }
.ph-support-item--ask { background: var(--background-info-med); border-color: var(--border-info); }
.ph-support-item--ask img { width: 40px; height: 40px; border-radius: var(--radius-full); flex-shrink: 0; }
.ph-support-item--ask .ph-caret { color: var(--content-link); }
.ph-support-ic { width: 40px; height: 40px; flex-shrink: 0; border-radius: var(--radius-m); background: var(--background-default-20); display: flex; align-items: center; justify-content: center; }
.ph-support-ic i { font-size: 16px; color: var(--content-default-med); }

.ph-trial { display: flex; align-items: center; gap: 24px; padding: clamp(24px, 3vw, 40px); border-radius: var(--radius-m); flex-wrap: wrap; }
.ph-trial > div { flex: 1; min-width: min(260px, 100%); display: flex; flex-direction: column; gap: 8px; }
.ph-trial h2 { color: var(--content-default-high); }
.ph-trial p { color: var(--content-default-med); }

/* ---------- Módulo ---------- */
.ph-page { padding: 24px clamp(16px, 2.5vw, 40px) 56px; display: flex; flex-direction: column; gap: 32px; }
.ph-modhead { display: flex; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
.ph-modhead .ph-chip { width: 56px; height: 56px; border-radius: var(--radius-l); }
.ph-modhead .ph-chip i { font-size: 24px; }
.ph-modhead > div { flex: 1; min-width: min(260px, 100%); display: flex; flex-direction: column; gap: 10px; }
.ph-modhead-title { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ph-modhead p { color: var(--content-default-med); max-width: 70ch; }
.ph-paid { align-items: center; gap: 16px; padding: 16px 20px; flex-wrap: wrap; }
.ph-paid > i { margin-top: 0; }
.ph-paid > span { flex: 1; min-width: min(240px, 100%); }
.ph-sub-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ph-sub-head h2 { color: var(--content-default-high); }

.ph-videos { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr)); gap: 16px; align-items: start; }
.ph-video-frame { grid-column: 1 / -1; min-width: 0; position: relative; overflow: hidden; aspect-ratio: 1920 / 1080; background: var(--background-contast); border-radius: var(--radius-m); }
.ph-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none; }
.ph-video-list { display: flex; flex-direction: column; gap: 8px; }
.ph-video-list button { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: var(--radius-s); background: var(--background-default-10); border: 1px solid var(--border-default-med); width: 100%; }
.ph-video-list button i { font-size: 16px; color: var(--content-default-med); }
.ph-video-list button > span { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.ph-video-list button[aria-current="true"] { background: var(--background-info-med); border-color: var(--border-selected); }
.ph-video-list button[aria-current="true"] i { color: var(--content-link); }
@media (min-width: 1180px) { .ph-video-frame { grid-column: span 2; } }

.ph-guides { display: flex; flex-direction: column; gap: 8px; list-style: none; margin: 0; padding: 0; }
.ph-guide-row { display: flex; align-items: center; gap: clamp(12px, 2vw, 16px); padding: 14px clamp(12px, 2vw, 16px); }
.ph-guide-row .ph-n { color: var(--content-default-med); width: 24px; flex-shrink: 0; }
.ph-guide-row > span:nth-child(2) { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ph-guide-row .ph-t { color: var(--content-default-high); }
.ph-guide-row .ph-meta { color: var(--content-default-med); display: flex; align-items: center; gap: 6px; white-space: nowrap; }
.ph-guide-row .ph-meta i { font-size: 14px; }
.ph-guide-row .ph-min { width: 52px; text-align: right; }
.ph-guide-row .ph-meta-2 { display: none; flex-basis: 100%; }
@media (max-width: 639px) {
  .ph-guide-row > .ph-meta { display: none; }
  .ph-guide-row .ph-meta-2 { display: flex; }
}

.ph-related { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(240px, 100%), 1fr)); gap: 12px; }
.ph-related a { display: flex; align-items: center; gap: 12px; padding: 14px; }
.ph-related a > i:first-child { font-size: 16px; color: var(--content-link); }
.ph-related a > span { flex: 1; display: flex; flex-direction: column; gap: 6px; }
.ph-related .ph-t { color: var(--content-default-high); }
.ph-related .ph-m { color: var(--content-default-med); }

/* ---------- Guía ---------- */
.ph-guide { display: flex; align-items: flex-start; gap: clamp(16px, 2.5vw, 40px); padding: 24px clamp(16px, 2.5vw, 40px) 56px; }
.ph-modindex { width: 260px; flex-shrink: 0; position: sticky; top: 88px; display: none; flex-direction: column; gap: 2px; padding: 8px; border-radius: var(--radius-m); max-height: calc(100vh - 104px); overflow-y: auto; }
.ph-modindex-head { display: flex; align-items: center; gap: 8px; padding: 8px 12px 12px; margin-bottom: 4px; border-bottom: 1px solid var(--border-default-med); color: var(--content-default-high); }
.ph-modindex-head i { font-size: 16px; color: var(--content-link); }
.ph-sib { display: flex; align-items: center; gap: 8px; min-height: 36px; padding: 8px 12px; border-radius: var(--radius-s); color: var(--content-default-med); }
.ph-sib .ph-sib-n { width: 20px; flex-shrink: 0; color: var(--content-default-med); }
.ph-sib span:last-child { flex: 1; min-width: 0; }
.ph-sib[aria-current="page"] { background: var(--background-info-med); color: var(--content-link); font-weight: var(--font-weight-medium); }
.ph-sib[aria-current="page"] .ph-sib-n { color: var(--content-link); }

.ph-article { flex: 1; min-width: 0; max-width: 780px; display: flex; flex-direction: column; gap: 24px; }
.ph-mobindex { border-radius: var(--radius-m); overflow: hidden; }
.ph-mobindex summary { list-style: none; display: flex; align-items: center; gap: 12px; padding: 12px 16px; min-height: 56px; cursor: pointer; }
.ph-mobindex summary::-webkit-details-marker { display: none; }
.ph-mobindex summary > i:first-child { font-size: 16px; color: var(--content-link); }
.ph-mobindex summary > span { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.ph-mobindex summary > i:last-child { font-size: 16px; color: var(--content-default-med); }
.ph-mobindex[open] summary > i:last-child { transform: rotate(180deg); }
.ph-mobindex-body { display: flex; flex-direction: column; gap: 2px; padding: 8px; border-top: 1px solid var(--border-default-med); animation: omFadeUp .22s ease-out; }
.ph-mobindex-body .ph-sib { min-height: 44px; }
.ph-mobindex-label { padding: 12px 12px 4px; color: var(--content-default-med); }

.ph-art-head { display: flex; flex-direction: column; gap: 12px; }
.ph-art-head h1 { color: var(--content-default-high); line-height: 1.2; text-wrap: balance; }
.ph-art-meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; color: var(--content-default-med); }
.ph-art-meta span { display: flex; align-items: center; gap: 6px; }
.ph-art-meta i { font-size: 14px; }

.ph-toc { width: 220px; flex-shrink: 0; position: sticky; top: 88px; display: none; flex-direction: column; gap: 8px; padding: 16px 12px; border-radius: var(--radius-m); max-height: calc(100vh - 104px); overflow-y: auto; }
.ph-toc > span { color: var(--content-default-med); padding-left: 12px; }
.ph-toc a { display: block; padding: 8px 12px; min-height: 36px; color: var(--content-default-med); border-left: 2px solid var(--border-default-med); }
.ph-toc a.is-active { color: var(--content-link); border-color: var(--border-selected); }

@media (min-width: 1100px) {
  .ph-modindex { display: flex; }
  .ph-mobindex { display: none; }
  body.pranita-open .ph-modindex { display: none; }
  body.pranita-open .ph-mobindex { display: block; }
}
@media (min-width: 1300px) { body.pranita-open .ph-modindex { display: flex; } body.pranita-open .ph-mobindex { display: none; } }
@media (min-width: 1320px) { .ph-toc { display: flex; } body.pranita-open .ph-toc { display: none; } }
@media (min-width: 1620px) { body.pranita-open .ph-toc { display: flex; } }

/* Cuerpo de la guía (bloques de Gutenberg) */
.ph-prose { display: flex; flex-direction: column; gap: 16px; color: var(--content-default-high); }
.ph-prose > * { margin: 0; }
.ph-prose h2 { font-size: var(--font-size-20); font-weight: var(--font-weight-semibold); line-height: 1.3; margin-top: 24px; text-wrap: balance; }
.ph-prose h3 { font-size: var(--font-size-16); font-weight: var(--font-weight-semibold); line-height: 1.4; margin-top: 8px; }
.ph-prose p, .ph-prose li { font-size: var(--font-size-16); font-weight: var(--font-weight-regular); line-height: 1.7; text-wrap: pretty; }
.ph-prose strong { font-weight: var(--font-weight-semibold); }
.ph-prose ul, .ph-prose ol { padding-left: 20px; display: flex; flex-direction: column; gap: 10px; }
.ph-prose li { padding-left: 4px; }
.ph-prose a:not(.wp-block-button__link) { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--border-info); }
.ph-prose hr { width: 100%; margin: 8px 0; border: none; border-top: 1px solid var(--border-default-med); }
.ph-prose .ph-tip p { font-size: var(--font-size-14); line-height: 1.6; flex: 1; margin: 0; }
.ph-prose .wp-block-buttons { display: flex; }
.ph-prose .wp-block-button__link { display: inline-flex; align-items: center; min-height: 40px; padding: 10px 16px; border-radius: var(--radius-s); background: var(--background-accent); color: var(--content-inverse-high); border: 1px solid var(--border-selected); box-shadow: var(--shadow-s); font-size: var(--font-size-14); font-weight: var(--font-weight-semibold); line-height: 1.4; }
.ph-prose .wp-block-image { align-self: flex-start; max-width: 100%; }
.ph-prose .wp-block-image a { display: block; padding: 8px; background: var(--background-default-10); border: 1px solid var(--border-default-med); border-radius: var(--radius-m); }
.ph-prose .wp-block-image img { display: block; max-width: 100%; height: auto; border-radius: var(--radius-s); }
.ph-prose ol:is(.ph-steps, .is-style-pasos) { list-style: none; padding: 0; gap: 8px; counter-reset: ph-step; }
.ph-prose ol:is(.ph-steps, .is-style-pasos) > li { counter-increment: ph-step; position: relative; padding: 16px 16px 16px 60px; background: var(--background-default-10); border: 1px solid var(--border-default-med); border-radius: var(--radius-s); font-size: var(--font-size-14); line-height: 1.6; }
.ph-prose ol:is(.ph-steps, .is-style-pasos) > li::before { content: counter(ph-step); width: 28px; height: 28px; flex-shrink: 0; border-radius: var(--radius-full); background: var(--background-info-med); border: 1px solid var(--border-info); display: flex; align-items: center; justify-content: center; color: var(--content-link); font-size: var(--font-size-12); font-weight: var(--font-weight-semibold); position: absolute; left: 16px; top: 16px; }

.ph-faqs { display: flex; flex-direction: column; gap: 16px; margin-top: 16px; }
.ph-faqs h2 { color: var(--content-default-high); line-height: 1.3; }

.ph-feedback { display: flex; flex-direction: column; gap: 12px; padding: 20px; border-radius: var(--radius-m); }
.ph-fb-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.ph-fb-row > span { flex: 1; min-width: min(200px, 100%); color: var(--content-default-high); }
.ph-fb-row > div { display: flex; gap: 8px; }
.ph-fb-done { display: flex; align-items: center; gap: 8px; color: var(--content-success); }
.ph-fb-done i { font-size: 16px; }
.ph-fb-no { display: flex; flex-direction: column; gap: 16px; }
.ph-fb-back { display: flex; align-items: center; gap: 8px; margin-left: -8px; }
.ph-fb-back button { width: 40px; height: 40px; flex-shrink: 0; border-radius: var(--radius-s); display: flex; align-items: center; justify-content: center; color: var(--content-default-med); }
.ph-fb-back button i { font-size: 16px; }
.ph-fb-reasons { display: flex; gap: 8px; flex-wrap: wrap; }
.ph-fb-comment { display: flex; flex-direction: column; gap: 8px; animation: omFadeUp .22s ease-out; }
.ph-fb-comment textarea { width: 100%; resize: vertical; min-height: 88px; padding: 10px 12px; border-radius: var(--radius-s); border: 1px solid var(--border-default-high); background: var(--background-default-10); color: var(--content-default-high); font-size: var(--font-size-16); line-height: 1.5; outline: none; }
.ph-fb-comment textarea:focus { border-color: var(--border-focus); box-shadow: var(--shadow-input-focused); }
.ph-fb-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px 16px; flex-wrap: wrap; padding-top: 4px; }
.ph-fb-foot p { flex: 1; min-width: min(260px, 100%); color: var(--content-default-med); }
.ph-textlink { display: inline; font: inherit; font-weight: var(--font-weight-semibold); color: var(--content-link); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--border-info); }

.ph-pager { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px 24px; flex-wrap: wrap; padding-top: 8px; }
.ph-pager a { display: flex; flex-direction: column; gap: 4px; min-height: 44px; padding: 4px 0; max-width: min(360px, 100%); color: var(--content-link); }
.ph-pager a > span:first-child { color: var(--content-default-med); }
.ph-pager a > span:last-child { display: flex; align-items: center; gap: 6px; }
.ph-pager a i { font-size: 16px; flex-shrink: 0; }
.ph-pager .ph-next { margin-left: auto; align-items: flex-end; text-align: right; }

/* ---------- 404 ---------- */
.ph-404 { flex: 1; display: flex; align-items: center; justify-content: center; padding: clamp(32px, 6vw, 72px) clamp(16px, 2.5vw, 40px) 72px; }
.ph-404 > div { width: 100%; max-width: 640px; display: flex; flex-direction: column; align-items: center; gap: 24px; text-align: center; }
.ph-404 img { display: block; width: min(480px, 100%); height: auto; }
[data-theme="dark"] .ph-404-light, :root:not([data-theme="dark"]) .ph-404-dark { display: none; }
.ph-404 h1 { color: var(--content-default-high); text-wrap: balance; }
.ph-404 p { color: var(--content-default-med); max-width: 52ch; text-wrap: pretty; }

/* ---------- Pie ---------- */
.ph-footer { margin-top: auto; background: var(--background-contast); padding: 40px clamp(16px, 2.5vw, 40px); }
.ph-footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); gap: 24px; }
.ph-footer-grid > div { display: flex; flex-direction: column; gap: 10px; }
.ph-footer img { height: 24px; width: auto; align-self: flex-start; }
.ph-footer .ph-footer-claim { color: var(--content-inverse-med); max-width: 32ch; }
.ph-footer-title { color: var(--content-inverse-high); }
.ph-footer a { display: inline-flex; align-items: center; min-height: 32px; color: var(--content-inverse-med); }

/* ---------- Pranita ---------- */
.ph-pranita-backdrop { position: fixed; inset: 0; z-index: 149; background: var(--background-overlay); animation: omFade .2s ease-out; }
.ph-pranita-wrap { width: 0; min-width: 0; flex-shrink: 0; overflow: hidden; position: sticky; top: 64px; height: calc(100vh - 64px); align-self: flex-start; transition: width .34s cubic-bezier(.2,.8,.2,1), min-width .34s cubic-bezier(.2,.8,.2,1); }
body.pranita-open .ph-pranita-wrap { width: min(380px, 32vw); min-width: 300px; }
.ph-pranita { width: min(380px, 32vw); min-width: 300px; max-width: 100vw; height: 100%; background: var(--background-default-10); border-left: 1px solid var(--border-default-med); display: flex; flex-direction: column; transform: translateX(48px); opacity: 0; transition: transform .34s cubic-bezier(.2,.8,.2,1), opacity .24s ease; }
body.pranita-open .ph-pranita { transform: none; opacity: 1; }
@media (max-width: 1179px) {
  .ph-pranita-wrap { position: fixed; top: 0; right: 0; z-index: 150; height: 100vh; height: 100dvh; }
  body.pranita-open .ph-pranita-wrap, .ph-pranita { width: min(420px, 100vw); min-width: 0; }
}
@media (max-width: 899px) {
  body.pranita-open .ph-pranita-wrap, .ph-pranita { width: 100vw; }
  .ph-pranita { border-left: none; }
}
.ph-pranita-head { flex-shrink: 0; display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--border-default-med); }
.ph-pranita-head img { width: 32px; height: 32px; border-radius: var(--radius-full); background: var(--background-default-20); }
.ph-pranita-head > div { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.ph-pranita-ctx { color: var(--content-default-med); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ph-pranita-close { width: 40px; height: 40px; border-radius: var(--radius-s); display: flex; align-items: center; justify-content: center; }
.ph-pranita-close i { font-size: 16px; color: var(--content-default-med); }
.ph-chat { flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden; padding: 16px; display: flex; flex-direction: column; gap: 12px; }
.ph-msg { display: flex; min-width: 0; animation: omFadeUp .24s ease-out; }
.ph-msg > div { max-width: 88%; min-width: 0; padding: 12px 14px; border-radius: var(--radius-l); background: var(--background-default-20); border: 1px solid var(--border-default-med); color: var(--content-default-high); overflow-wrap: anywhere; }
.ph-msg--u { justify-content: flex-end; }
.ph-msg--u > div { background: var(--background-accent); border-color: var(--border-selected); color: var(--content-inverse-high); }
.ph-msg-links { display: flex; flex-direction: column; gap: 6px; margin-top: 10px; }
.ph-msg-links a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 8px 10px; border-radius: var(--radius-s); background: var(--background-default-10); border: 1px solid var(--border-default-med); }
.ph-msg-links a > i:first-child { font-size: 16px; color: var(--content-link); flex-shrink: 0; }
.ph-msg-links a > span { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.ph-msg-links .ph-t { color: var(--content-default-high); }
.ph-msg-links .ph-m { color: var(--content-default-med); }
.ph-pranita-foot { flex-shrink: 0; display: flex; flex-direction: column; gap: 8px; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--border-default-med); }
.ph-suggest { display: flex; flex-wrap: wrap; gap: 6px; }
.ph-suggest button { padding: 8px 14px; min-height: 40px; white-space: normal; border-radius: var(--radius-full); border: 1px solid var(--border-default-high); color: var(--content-default-med); }
.ph-ask { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border: 1px solid var(--border-default-high); border-radius: var(--radius-s); }
.ph-ask:focus-within { border-color: var(--border-focus); box-shadow: var(--shadow-input-focused); }
.ph-ask input { flex: 1; min-width: 0; border: none; outline: none; background: transparent; font-size: var(--font-size-16); color: var(--content-default-high); }
.ph-ask input:focus-visible { outline: none; }
.ph-ask button { width: 40px; height: 40px; flex-shrink: 0; border-radius: var(--radius-s); background: var(--background-accent); display: flex; align-items: center; justify-content: center; }
.ph-ask button i { font-size: 16px; color: var(--content-inverse-high); }
.ph-pranita-note { color: var(--content-default-med); }

.ph-fab { position: fixed; right: calc(clamp(16px, 2.5vw, 32px) + env(safe-area-inset-right, 0px)); bottom: calc(clamp(24px, 3vw, 32px) + env(safe-area-inset-bottom, 0px)); z-index: 120; width: 64px; height: 64px; padding: 4px; border-radius: var(--radius-full); background: var(--background-default-10); border: 1px solid var(--border-default-high); box-shadow: var(--shadow-m); display: flex; align-items: center; justify-content: center; transition: opacity .2s ease, transform .26s cubic-bezier(.2,.8,.2,1), border-color .18s ease, box-shadow .18s ease; }
.ph-fab img { width: 100%; height: 100%; border-radius: var(--radius-full); display: block; }
body.pranita-open .ph-fab { opacity: 0; transform: translateY(12px) scale(.96); pointer-events: none; }

/* ---------- Buscador ---------- */
.ph-search { position: fixed; inset: 0; z-index: 200; background: var(--background-overlay); display: flex; align-items: flex-start; justify-content: center; padding: 12px; animation: omFade .18s ease-out; }
.ph-search-box { width: 640px; max-width: 100%; background: var(--background-default-10); border: 1px solid var(--border-default-med); border-radius: var(--radius-l); box-shadow: var(--shadow-m); overflow: hidden; animation: omPop .22s cubic-bezier(.2,.8,.2,1); }
.ph-search-bar { display: flex; align-items: center; gap: 10px; padding: 14px 16px; border-bottom: 1px solid var(--border-default-med); }
.ph-search-bar > i { font-size: 16px; color: var(--content-default-med); }
.ph-search-bar input { flex: 1; min-width: 0; border: none; outline: none; background: transparent; font-size: var(--font-size-16); color: var(--content-default-high); }
.ph-search-bar input:focus-visible { outline: none; }
.ph-search-bar button { padding: 6px 12px; border-radius: var(--radius-s); background: var(--background-default-20); color: var(--content-default-med); min-height: 36px; }
.ph-search-close-k { display: none; }
.ph-search-list { max-height: calc(100dvh - 110px); overflow-y: auto; padding: 8px; }
.ph-search-heading { display: block; padding: 8px 10px; color: var(--content-default-med); }
.ph-result { width: 100%; display: flex; align-items: center; gap: 12px; padding: 10px; border-radius: var(--radius-s); color: var(--content-default-high); }
.ph-result > i { font-size: 16px; color: var(--content-default-med); }
.ph-result > span:nth-child(2) { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.ph-result .ph-m { color: var(--content-default-med); }
.ph-result:focus-visible, .ph-result.is-active { background: var(--background-info-med); color: var(--content-link); outline: none; }
.ph-search-empty { padding: 24px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; color: var(--content-default-med); }
@media (min-width: 744px) {
  .ph-search-list { max-height: 420px; }
}
@media (min-width: 1180px) {
  .ph-search { padding: 96px 16px 16px; }
  .ph-search-close-k { display: inline; }
  .ph-search-close-t { display: none; }
}
@media (max-width: 743px) {
  .ph-hero-search kbd, .ph-header-search kbd { display: none; }
  .ph-search { padding: 8px; }
  .ph-search-box { height: calc(100dvh - 16px); display: flex; flex-direction: column; }
  .ph-search-list { flex: 1; max-height: none; }
}

/* ---------- Hover solo con ratón; en táctil, destello lila al pulsar ---------- */
@media (hover: hover) {
  a:hover { color: var(--content-link-hover); }
  .ph-btn--primary:hover, .ph-prose .wp-block-button__link:hover { background: var(--background-accent-hover); border-color: var(--border-selected-hover); color: var(--content-inverse-high); }
  .ph-btn--secondary:hover { border-color: var(--border-selected); color: var(--content-link); }
  .ph-btn--ghost:hover { background: var(--background-info-med); color: var(--content-link); }
  .ph-btn:disabled:hover { background: var(--background-default-30); color: var(--content-disabled); border-color: var(--border-disabled); }
  .ph-nav a:hover, .ph-icon-btn:hover, .ph-menu > a:hover, .ph-pranita-close:hover, .ph-fb-back button:hover, .ph-search-bar button:hover { background: var(--background-info-med); color: var(--content-link); }
  .ph-icon-btn:hover i, .ph-pranita-close:hover i { color: var(--content-link); }
  .ph-header-search:hover, .ph-hero-search:hover, .ph-fab:hover, .ph-msg-links a:hover, .ph-suggest button:hover, .ph-video-list button:hover { border-color: var(--border-selected); }
  .ph-suggest button:hover { color: var(--content-link); }
  .ph-popular a:hover { background: var(--background-accent); border-color: var(--background-accent); color: var(--content-inverse-high); }
  .ph-tabs button:hover { color: var(--content-link); }
  .ph-pill:hover { border-color: var(--border-selected); color: var(--content-link); }
  .ph-pill[aria-pressed="true"]:hover { color: var(--content-inverse-high); }
  .ph-pill--soft[aria-pressed="true"]:hover { color: var(--content-link); }
  .ph-lift:hover { border-color: var(--border-selected); box-shadow: var(--shadow-s); transform: translateY(-1px); }
  .ph-modcard-head:hover .ph-modcard-name, .ph-modcard-list a:hover, .ph-modcard-list a:hover i, .ph-modindex-head:hover { color: var(--content-link); }
  .ph-cta-link:hover, .ph-crumbs a:hover, .ph-textlink:hover, .ph-pager a:hover { color: var(--content-link-hover); }
  .ph-sib:hover, .ph-result:hover { background: var(--background-info-med); color: var(--content-link); }
  .ph-acc summary:hover span, .ph-acc summary:hover i { color: var(--content-link); }
  .ph-mobindex summary:hover { background: var(--background-info-med); }
  .ph-toc a:hover { color: var(--content-link); border-color: var(--border-selected); }
  .ph-modtoggle button:hover { border-color: var(--border-selected); color: var(--content-link); }
  .ph-ask button:hover { background: var(--background-accent-hover); }
  .ph-footer a:hover { color: var(--content-inverse-high); text-decoration: underline; text-underline-offset: 3px; }
  .ph-support-item--ask:hover { border-color: var(--border-selected); }
}
@media (hover: none) {
  button:active, a:active { opacity: .85; }
  .ph-lift:active, .ph-sib:active, .ph-result:active, .ph-modcard-list a:active, .ph-menu > a:active, .ph-mobindex summary:active, .ph-acc summary:active, .is-pressed { background: var(--background-info-med); color: var(--content-link); border-color: var(--border-selected); }
  .ph-pager a:active, .ph-textlink:active { color: var(--content-link); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
  .ph-hero-glow { display: none; }
}
.ph-404-text { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.ph-article--plain { margin: 0 auto; width: 100%; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
/* Áreas táctiles de 44 px en móvil */
@media (max-width: 743px) {
  .ph-btn, .ph-pill, .ph-popular a, .ph-tabs button, .ph-suggest button, .ph-search-bar button { min-height: 44px; }
  .ph-fb-back button, .ph-pranita-close, .ph-ask button { width: 44px; height: 44px; }
}

/* Pie: contacto, redes, sellos y franja legal (como www.prana.software) */
.ph-footer { display: flex; flex-direction: column; gap: 32px; }
.ph-footer-brand a { gap: 8px; }
.ph-footer-brand a i { font-size: 16px; flex-shrink: 0; }
.ph-footer-social { display: flex; flex-wrap: wrap; gap: 4px; margin: 4px 0; }
.ph-footer-social a { width: 44px; height: 44px; justify-content: center; border-radius: var(--radius-s); border: 1px solid var(--content-inverse-med); }
.ph-footer-social a i { font-size: 18px; }
.ph-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; padding-top: 24px; border-top: 1px solid var(--content-inverse-med); color: var(--content-inverse-med); line-height: 1.5; }
.ph-footer-bottom nav { display: flex; flex-wrap: wrap; gap: 4px 20px; }
.ph-footer-bottom a, .ph-footer-bottom button { display: inline-flex; align-items: center; min-height: 32px; color: var(--content-inverse-med); font: inherit; }
.ph-footer-bottom span a { display: inline; min-height: 0; text-decoration: underline; text-underline-offset: 3px; }
@media (hover: hover) {
  .ph-footer-social a:hover { border-color: var(--content-inverse-high); color: var(--content-inverse-high); }
  .ph-footer-bottom button:hover { color: var(--content-inverse-high); text-decoration: underline; text-underline-offset: 3px; }
}
@media (max-width: 743px) { .ph-footer-bottom a, .ph-footer-bottom button { min-height: 44px; } }
/* Iconos de redes en una fila en escritorio (44 px solo en táctil) y espacio para el botón de Pranita */
@media (min-width: 744px) { .ph-footer-social a { width: 36px; height: 36px; } .ph-footer-social a i { font-size: 16px; } }
.ph-footer-bottom { padding-right: 88px; }
@media (max-width: 743px) { .ph-footer-bottom { padding-right: 0; padding-bottom: 88px; } }
@media (max-width: 743px) { .ph-footer a { min-height: 44px; } .ph-footer-bottom span a { min-height: 0; } }

/* Pranita: «Sugerencias» plegable */
.ph-suggest-toggle { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 4px 8px; margin-left: -8px; border-radius: var(--radius-s); color: var(--content-default-med); }
.ph-suggest-toggle i { font-size: 14px; }
/* Plegado: flecha hacia abajo (hay más que ver); desplegado: hacia arriba (para cerrar). */
.ph-suggest-toggle[aria-expanded="true"] i { transform: rotate(180deg); }
@media (hover: hover) { .ph-suggest-toggle:hover { background: var(--background-info-med); color: var(--content-link); } }
@media (max-width: 743px) { .ph-suggest-toggle { min-height: 44px; } }
