/* =====================================================================
   INICIO (19-10-2026): estructura de app (buscador, categorías, banners, resumen) con la paleta Apple
   arcoíris de la presentación. Solo estiliza componentes propios del Inicio y las animaciones de entrada;
   colores, letra, botones y tarjetas los manda apple.css (variante clara con arcoíris).
   ===================================================================== */
:root{--ok-blue:#0071e3;--ok-indigo:#5856d6;--ok-purple:#af52de;--ok-pink:#ff2d55;--ok-orange:#ff9500;--ok-yellow:#ffcc00;--ok-green:#34c759;--ok-teal:#30b0c7;--ok-gray:#8e8e93}
.rp-home{display:grid;gap:20px;min-width:0}
.rp-home>*{min-width:0}
/* Saludo: jerarquía de título de página */
.rp-greet .rp-hello{margin:0 0 4px;font-size:17px;font-weight:400;color:var(--a-muted,#6e6e73)}
.rp-greet h1{margin:0;font-size:40px;line-height:1.1;letter-spacing:-.01em}
/* Buscador en píldora (search-input de la guía) */
.rp-search{display:flex!important;align-items:center;gap:10px;width:100%;min-height:48px!important;padding:0 20px!important;border-radius:9999px!important;
 border:1px solid rgba(0,0,0,.08)!important;background:#fff!important;color:#6e6e73!important;font:400 17px/1 var(--a-text)!important;letter-spacing:-.374px!important;justify-content:flex-start;text-align:left}
.rp-search svg{width:18px;height:18px;flex:none;color:#6e6e73}
.rp-search:hover{background:#fafafc!important}
/* Categorías: íconos tipo app de iPhone (cuadro redondeado de color del sistema, glifo blanco) */
.rp-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:14px 8px;padding:2px 0}
.rp-cat{display:flex!important;flex-direction:column;align-items:center;gap:8px;text-decoration:none!important;color:var(--a-ink,#1d1d1f)!important;
 font:400 12px/1.2 var(--a-text)!important;letter-spacing:-.12px!important;text-align:center;background:none!important;border:0!important;padding:0!important;min-height:0!important;box-shadow:none!important;border-radius:0!important}
#content a.rp-cat,#content button.rp-cat{color:var(--a-ink,#1d1d1f)!important}
.rp-bubble{display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background:var(--bub);color:#fff;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.rp-bubble .nav-ic{width:26px;height:26px;stroke:#fff;stroke-width:2}
.rp-cat:hover .rp-bubble{transform:translateY(-2px)}
.rp-cat:active .rp-bubble{transform:scale(.92)}
.c-orange{--bub:var(--ok-blue)}.c-green{--bub:var(--ok-green)}.c-blue{--bub:var(--ok-orange)}.c-pink{--bub:var(--ok-pink)}
.c-teal{--bub:var(--ok-teal)}.c-purple{--bub:var(--ok-indigo)}.c-yellow{--bub:var(--ok-purple)}.c-gray{--bub:var(--ok-gray)}
/* Banners: mosaicos claros con tinte de la paleta, titular en tinta con el tramo final en arcoíris */
.rp-track{display:grid;grid-auto-flow:column;grid-auto-columns:100%;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.rp-track::-webkit-scrollbar{display:none}
.rp-slide{position:relative;scroll-snap-align:start;min-height:200px;border-radius:18px!important;padding:24px!important;overflow:hidden;display:flex;align-items:center;
 border:1px solid #e0e0e0!important;box-shadow:none!important;color:var(--a-ink,#1d1d1f)!important}
.rp-slide>div{position:relative;z-index:2;max-width:calc(100% - 150px)}
.rp-slide small{display:block;margin-bottom:6px;font-size:14px!important;font-weight:600!important;color:var(--tc)!important;letter-spacing:-.224px!important}
.rp-slide h2{margin:0 0 16px!important;font:600 28px/1.14 var(--a-display)!important;letter-spacing:-.01em!important;color:var(--a-ink,#1d1d1f)!important}
#content .rp-slide h2 .grad{background:var(--a-rainbow)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent}
.rp-slide .actions{display:block!important}
.s-orange{background:color-mix(in srgb,var(--ok-blue) 8%,#fff)!important;--tc:#0058b0}
.s-purple{background:color-mix(in srgb,var(--ok-purple) 9%,#fff)!important;--tc:#7d3aa0}
.s-green{background:color-mix(in srgb,var(--ok-green) 10%,#fff)!important;--tc:#1d6b34}
.rp-slide .hero-pet{position:absolute!important;right:12px!important;bottom:0!important;top:auto!important;z-index:1;pointer-events:none}
.rp-slide .hero-pet .czp-l{width:118px!important;height:172px!important}
.rp-slide .hero-pet .cz-fx{display:none!important}
.rp-slide-pet{position:absolute;right:12px;bottom:0;height:172px;width:auto;z-index:1;filter:drop-shadow(3px 5px 30px rgba(0,0,0,.22));animation:ok-float 5s ease-in-out infinite;pointer-events:none}
@keyframes ok-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.rp-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.rp-dots i{width:7px;height:7px;border-radius:4px;background:#d2d2d7;transition:width .3s ease,background-color .3s ease}
.rp-dots i.on{width:20px;background:var(--a-primary,#0066cc)}
@media(min-width:1100px){.rp-track{grid-auto-columns:calc((100% - 24px)/3)}.rp-dots{display:none}.rp-slide>div{max-width:calc(100% - 120px)}.rp-slide h2{font-size:24px!important}}
/* Resumen: tarjetas blancas con cifra en color de la paleta */
.rp-h{margin:8px 0 -4px!important;font-size:21px!important}
.rp-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px!important;background:none!important;border:0!important;border-radius:0!important;overflow:visible!important}
.rp-kpis .card{border:1px solid #e0e0e0!important;border-radius:18px!important;padding:18px!important;background:#fff!important;box-shadow:none!important;min-width:0}
.rp-kpis .card+.card{border-left:1px solid #e0e0e0!important}
.rp-kpis .card>strong{display:block;margin:6px 0 2px;font:600 34px/1.1 var(--a-display)!important;letter-spacing:-.374px!important;color:var(--k)!important}
.k-blue{--k:var(--ok-blue)}.k-orange{--k:#c93400}.k-purple{--k:var(--ok-purple)}.k-green{--k:#248a3d}
/* Entradas animadas (suaves, sin rebote) */
.rp-home>*{animation:ok-in .5s cubic-bezier(.2,.8,.2,1) both}
.rp-home>*:nth-child(2){animation-delay:.04s}.rp-home>*:nth-child(3){animation-delay:.08s}.rp-home>*:nth-child(4){animation-delay:.12s}.rp-home>*:nth-child(5){animation-delay:.16s}.rp-home>*:nth-child(n+6){animation-delay:.2s}
@keyframes ok-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
/* Esqueleto mientras carga un módulo */
#content>.notice[role=status]{font-size:0!important;padding:0!important;display:grid!important;gap:14px;background:none!important;border:0!important}
#content>.notice[role=status] progress{display:none!important}
#content>.notice[role=status]::before,#content>.notice[role=status]::after{content:'';display:block;border-radius:18px;background:linear-gradient(90deg,#f2f2f4 25%,#e8e8ec 37%,#f2f2f4 63%);background-size:400% 100%;animation:ok-shimmer 1.3s ease infinite}
#content>.notice[role=status]::before{height:110px}
#content>.notice[role=status]::after{height:220px}
@keyframes ok-shimmer{from{background-position:100% 50%}to{background-position:0 50%}}
/* Celular */
@media(max-width:760px){
 .rp-home{gap:16px}
 .rp-greet h1{font-size:30px}
 .rp-greet .rp-hello{font-size:15px}
 .rp-cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 6px}
 .rp-bubble{width:54px;height:54px}
 .rp-slide{min-height:184px;padding:20px!important}
 .rp-slide>div{max-width:calc(100% - 112px)}
 .rp-slide h2{font-size:21px!important;line-height:1.19!important}
 .rp-slide .hero-pet .czp-l{width:96px!important;height:140px!important}
 .rp-slide-pet{height:140px;right:8px}
 .rp-slide button,.rp-slide .button{font-size:15px!important;padding:10px 16px!important;min-height:42px}
 .rp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
 .rp-kpis .card>strong{font-size:28px!important}
}
@media(max-width:360px){.rp-cats{grid-template-columns:repeat(3,minmax(0,1fr))}.rp-slide>div{max-width:100%}.rp-slide .hero-pet,.rp-slide-pet{opacity:.25}}
@media(prefers-reduced-motion:reduce){.rp-home>*,.rp-slide-pet,#content>.notice[role=status]::before,#content>.notice[role=status]::after{animation:none!important}}
/* Botones de los banners: tamaño a su texto, sin desbordarse */
#content .rp-slide .actions>button,#content .rp-slide .actions>.button{flex:0 1 auto!important;white-space:normal!important;max-width:100%}
