:root{
  --rojo:#E4312B;
  --azul:#29ABE2;
  --amarillo:#FFC20E;
  --verde:#3FA34D;    /* Fitzgerald/PODD: verbos y acciones */
  --naranja:#F2811D;  /* Fitzgerald/PODD: sustantivos */
  --rosado:#E85D9E;   /* Fitzgerald/PODD: social / comunicación rápida */
  --marino:#1B3A6B;
  --crema:#FDFBF7;
  --grafito:#454B54;
  --tenue:#6B6F76; /* texto secundario, cumple contraste AA sobre fondo claro */
  --linea:#E7E2D8;
  --radius:18px;
  --board-cols:auto-fill; /* # de fichas por fila del tablero AAC, ajustable en el panel de accesibilidad */
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;font-size:100%;}
body{
  margin:0;
  font-family:'Raleway',sans-serif;
  font-size:1rem;
  background:var(--crema);
  color:var(--grafito);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;}
.wrap{max-width:1080px;margin:0 auto;padding:0 28px;}

/* ---------- UTILIDADES DE ACCESIBILIDAD ---------- */
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.skip-link{
  position:absolute;top:-48px;left:8px;z-index:100;
  background:var(--marino);color:#fff;font-weight:700;font-size:.9375rem;
  padding:10px 18px;border-radius:0 0 10px 10px;text-decoration:none;
  transition:top .15s ease;
}
.skip-link:focus{top:0;}

/* Tamaño de texto ajustable (panel de accesibilidad): escala el rem base. */
html[data-fontsize="lg"]{font-size:118.75%;}
html[data-fontsize="xl"]{font-size:137.5%;}

/* Alto contraste: texto más oscuro, líneas más marcadas, sin transparencias. */
html[data-contrast="high"]{
  --grafito:#000;
  --tenue:#000;
  --linea:#000;
  --crema:#fff;
}
html[data-contrast="high"] .nav{background:#fff;backdrop-filter:none;border-bottom:2px solid #000;}
html[data-contrast="high"] .card,
html[data-contrast="high"] input,
html[data-contrast="high"] select,
html[data-contrast="high"] textarea,
html[data-contrast="high"] .picto-tile,
html[data-contrast="high"] .frase-chip,
html[data-contrast="high"] .chip{border-width:2px;}
html[data-contrast="high"] .btn-outline{border-width:3px;}
html[data-contrast="high"] :focus-visible{outline-width:4px;}

/* Reducir movimiento (interruptor manual, además de prefers-reduced-motion). */
html[data-motion="reduce"] *{
  transition:none!important;animation:none!important;scroll-behavior:auto!important;
}
html[data-motion="reduce"] .btn:active,
html[data-motion="reduce"] .picto-tile:hover,
html[data-motion="reduce"] .picto-tile:active{transform:none!important;}

/* ---------- PANEL DE ACCESIBILIDAD ---------- */
.a11y-toggle{
  appearance:none;cursor:pointer;font-family:'Raleway',sans-serif;font-weight:700;font-size:.875rem;
  background:#fff;color:var(--marino);border:2px solid var(--marino);border-radius:999px;
  padding:8px 16px;display:inline-flex;align-items:center;gap:6px;
}
.a11y-toggle:hover{background:var(--marino);color:#fff;}
@media (max-width:760px){.a11y-toggle{font-size:0;padding:10px;}.a11y-toggle span{font-size:1rem;}}
.a11y-panel{
  background:#fff;border-bottom:1px solid var(--linea);
  box-shadow:0 12px 24px -16px rgba(27,58,107,.25);
}
.a11y-panel-inner{display:flex;flex-wrap:wrap;gap:24px;align-items:center;padding:16px 28px;}
.a11y-group{display:flex;align-items:center;gap:10px;}
.a11y-label{font-size:.8125rem;font-weight:700;color:var(--marino);}
.a11y-btn-row{display:flex;gap:6px;}
.a11y-btn{
  appearance:none;cursor:pointer;font-family:'Raleway',sans-serif;font-weight:700;font-size:.8125rem;
  background:#fff;color:var(--marino);border:2px solid var(--linea);border-radius:8px;padding:8px 12px;
}
.a11y-btn.active{background:var(--marino);border-color:var(--marino);color:#fff;}
.a11y-btn-wide{padding:8px 16px;}
.a11y-switch{display:flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:700;color:var(--marino);cursor:pointer;}
.a11y-switch input{width:18px;height:18px;}
.a11y-select{
  font-family:'Raleway',sans-serif;font-weight:700;font-size:.8125rem;color:var(--marino);
  border:2px solid var(--linea);border-radius:8px;padding:7px 10px;background:#fff;max-width:180px;
}
.a11y-range{width:110px;accent-color:var(--marino);}

/* ---------- MODO DE BARRIDO (switch scanning) ---------- */
.scan-item.scan-current{
  outline:4px solid var(--marino)!important;outline-offset:2px;
  box-shadow:0 0 0 8px rgba(27,58,107,.18)!important;
  position:relative;z-index:2;
}
.scan-switch-btn{
  position:fixed;right:20px;bottom:20px;z-index:60;
  width:84px;height:84px;border-radius:50%;border:none;cursor:pointer;
  background:var(--marino);color:#fff;font-weight:800;font-size:.78125rem;line-height:1.2;
  box-shadow:0 14px 30px -10px rgba(27,58,107,.6);
  display:none;flex-direction:column;align-items:center;justify-content:center;gap:2px;
}
html[data-scan="on"] .scan-switch-btn{display:flex;}
.scan-switch-btn:active{transform:scale(.94);}

/* ---------- RUTINAS: primero-después y agenda visual ---------- */
.slot-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center;padding:10px 0;}
.slot-box{
  display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;flex:1;min-width:150px;max-width:220px;
}
.slot-tag{font-weight:800;font-size:.875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--marino);}
.slot-picker{
  appearance:none;cursor:pointer;width:100%;aspect-ratio:1;border-radius:var(--radius);
  border:3px dashed var(--linea);background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  font-family:'Raleway',sans-serif;font-weight:700;color:var(--tenue);padding:10px;
}
.slot-picker.filled{border-style:solid;}
.slot-picker img{width:70%;height:70%;object-fit:contain;}
.slot-arrow{font-size:1.75rem;color:var(--linea);flex:none;}
@media (max-width:600px){.slot-arrow{transform:rotate(90deg);}}

.agenda-track{display:flex;gap:14px;overflow-x:auto;padding:10px 4px 18px;scroll-snap-type:x proximity;}
.agenda-step{
  scroll-snap-align:start;flex:none;width:120px;display:flex;flex-direction:column;align-items:center;gap:8px;
  position:relative;text-align:center;
}
.agenda-step-num{
  position:absolute;top:-8px;left:-8px;width:24px;height:24px;border-radius:50%;background:var(--marino);color:#fff;
  font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;z-index:1;
}
.agenda-tile{
  appearance:none;cursor:pointer;width:100%;aspect-ratio:1;border-radius:16px;border:3px solid var(--linea);background:#fff;
  display:flex;align-items:center;justify-content:center;padding:8px;
}
.agenda-tile img{width:80%;height:80%;object-fit:contain;}
.agenda-step.done .agenda-tile{background:#EEF9EE;border-color:#3FA34D;opacity:.65;}
.agenda-step.done .agenda-label{text-decoration:line-through;color:var(--tenue);}
.agenda-check{position:absolute;top:-6px;right:-6px;font-size:1.25rem;display:none;}
.agenda-step.done .agenda-check{display:block;}
.agenda-label{font-size:.8125rem;font-weight:700;color:var(--marino);word-break:break-word;}
.agenda-remove{
  appearance:none;cursor:pointer;border:none;background:transparent;color:var(--rojo);font-size:.75rem;font-weight:700;
}
.agenda-add-step{
  flex:none;width:120px;aspect-ratio:1;border-radius:16px;border:3px dashed var(--linea);background:none;cursor:pointer;
  color:var(--tenue);font-weight:700;font-size:1.75rem;display:flex;align-items:center;justify-content:center;
}

.mini-picker{margin-top:16px;padding:16px;background:var(--crema);border:1px solid var(--linea);border-radius:14px;display:none;}
.mini-picker.open{display:block;}
.mini-picker-grid{margin-top:14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;max-height:280px;overflow-y:auto;}

/* ---------- BANNER MODO DEMO ---------- */
.sheet-banner{background:#FFF6DD;border-bottom:1px solid #F0DFA0;color:#7A5B00;font-size:.8125rem;font-weight:600;text-align:center;padding:8px 12px;}

/* ---------- NAV ---------- */
.nav{
  position:sticky;top:0;z-index:40;
  background:rgba(253,251,247,.9);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--linea);
}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--marino);text-decoration:none;letter-spacing:-0.02em;}
.brand .piece{width:26px;height:26px;flex:none;}
.nav-links{display:flex;gap:6px;list-style:none;margin:0;padding:0;}
.nav-links a{
  font-weight:600;font-size:0.90625rem;text-decoration:none;color:var(--marino);
  padding:9px 16px;border-radius:999px;transition:background .15s ease;
}
.nav-links a:hover{background:#EEF6FC;}
@media (max-width:760px){.nav-links{display:none;}}

/* ---------- HERO ---------- */
.hero{padding:64px 0 40px;position:relative;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr;}}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:0.78125rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--rojo);background:#FDEDEC;padding:7px 14px;border-radius:999px;margin-bottom:18px;
}
h1{
  font-size:clamp(2.25rem,5.4vw,3.625rem);
  font-weight:900;line-height:1.03;letter-spacing:-0.02em;color:var(--marino);margin:0 0 20px;
}
h1 span{color:var(--azul);}
.lead{font-size:1.125rem;line-height:1.6;color:var(--grafito);max-width:52ch;margin:0 0 30px;}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;}
.btn{
  appearance:none;border:none;cursor:pointer;
  font-family:'Raleway',sans-serif;font-weight:700;font-size:0.9375rem;
  padding:14px 26px;border-radius:12px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;
  transition:transform .15s ease, box-shadow .15s ease;
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--rojo);color:#fff;box-shadow:0 8px 20px -8px rgba(228,49,43,.6);}
.btn-primary:hover{box-shadow:0 10px 24px -8px rgba(228,49,43,.75);}
.btn-outline{background:#fff;color:var(--marino);border:2px solid var(--marino);}
.btn-outline:hover{background:var(--marino);color:#fff;}
.btn-yellow{background:var(--amarillo);color:var(--marino);}
.btn-blue{background:var(--azul);color:#fff;}
.btn-block{width:100%;justify-content:center;}
.btn:disabled{opacity:.55;cursor:not-allowed;}

.hero-art{position:relative;height:340px;}
.piece-tile{
  position:absolute;border-radius:22px;box-shadow:0 18px 30px -14px rgba(27,58,107,.35);
}

/* ---------- PUZZLE DIVIDER (elemento de marca) ---------- */
.puzzle-divider{display:flex;height:26px;overflow:visible;margin:6px 0;}
.puzzle-divider .p{
  flex:1;height:100%;position:relative;
}
.puzzle-divider .p::after{
  content:"";position:absolute;top:-9px;left:50%;transform:translateX(-50%);
  width:18px;height:18px;border-radius:50%;background:inherit;
}
.puzzle-divider .p:nth-child(4n+1){background:var(--rojo);}
.puzzle-divider .p:nth-child(4n+2){background:var(--amarillo);}
.puzzle-divider .p:nth-child(4n+3){background:var(--azul);}
.puzzle-divider .p:nth-child(4n){background:var(--marino);}

/* ---------- SECCIONES ---------- */
section{padding:64px 0;}
.section-head{max-width:60ch;margin-bottom:36px;}
.section-tag{font-weight:700;font-size:0.78125rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:10px;display:block;}
h2{font-size:clamp(1.625rem,3.4vw,2.125rem);font-weight:800;color:var(--marino);margin:0 0 12px;letter-spacing:-0.01em;}
.section-desc{font-size:1rem;line-height:1.65;color:var(--grafito);}
.card{background:#fff;border:1px solid var(--linea);border-radius:var(--radius);}

/* ---------- HERRAMIENTA DE PICTOGRAMAS ---------- */
.picto-card{padding:28px;}
.picto-input-row{display:flex;gap:10px;flex-wrap:wrap;}
input[type=text],input[type=email],input[type=tel],select,textarea{
  font-family:'Raleway',sans-serif;font-size:0.9375rem;
  border:2px solid var(--linea);border-radius:12px;padding:13px 16px;
  background:#fff;color:var(--grafito);width:100%;
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--azul);}
.picto-input-row input{flex:1;min-width:220px;}
.picto-results{margin-top:22px;display:flex;flex-wrap:wrap;gap:14px;min-height:0;}
.picto-empty{font-size:0.875rem;color:var(--tenue);font-style:italic;}
.picto-note{margin-top:16px;font-size:0.84375rem;color:var(--tenue);line-height:1.5;}
.picto-note a{color:var(--azul);font-weight:700;text-decoration:none;}
.picto-note a:hover{text-decoration:underline;}

.mode-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.mode-tab{appearance:none;cursor:pointer;font-family:'Raleway',sans-serif;font-weight:700;font-size:0.875rem;padding:12px 18px;border-radius:12px 12px 0 0;border:2px solid var(--linea);border-bottom:none;background:#F5F3ED;color:var(--marino);}
.mode-tab.active{background:#fff;border-color:var(--linea);position:relative;top:2px;padding-top:14px;}

.picto-tile{appearance:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff;border:2px solid var(--linea);border-radius:14px;padding:10px 8px;text-align:center;font-family:'Raleway',sans-serif;transition:transform .1s ease;min-width:44px;min-height:44px;}
.picto-tile:hover{transform:translateY(-2px);}
.picto-tile:active{transform:translateY(0);}
.picto-tile-img-wrap{display:flex;align-items:center;justify-content:center;margin:0 auto;}
.picto-tile-img{width:100%;height:100%;object-fit:contain;}
.picto-tile-emoji{font-size:1.75rem;line-height:1;}
.picto-tile-label{font-size:0.78125rem;font-weight:700;color:var(--marino);word-break:break-word;}

.board-card{padding-top:24px;}
.frase-bar{background:var(--crema);border:1px solid var(--linea);border-radius:14px;padding:16px;min-height:64px;}
.frase-items{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;}
.frase-items:empty{margin-bottom:0;}
.frase-chip{appearance:none;cursor:pointer;display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--linea);border-radius:999px;padding:4px 14px 4px 4px;font-family:'Raleway',sans-serif;font-weight:700;font-size:0.875rem;color:var(--marino);}
.frase-chip-img{width:32px;height:32px;object-fit:contain;border-radius:999px;background:var(--crema);}
.frase-actions{display:flex;gap:10px;flex-wrap:wrap;}
.speak-toggle{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:0.84375rem;font-weight:600;color:var(--grafito);cursor:pointer;}
.board-grid{margin-top:18px;display:grid;grid-template-columns:repeat(var(--board-cols),minmax(96px,1fr));gap:12px;}

.add-picto-card{margin-top:16px;padding:18px;background:var(--crema);}
.add-picto-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;}
.add-picto-row .form-row:first-child{flex:2;}
.new-id-preview{width:56px;height:56px;border-radius:10px;background:#fff;border:2px solid var(--linea);display:none;align-items:center;justify-content:center;font-size:0.6875rem;color:var(--rojo);text-align:center;overflow:hidden;}
.new-id-preview img{width:100%;height:100%;object-fit:contain;}
.add-picto-actions{display:flex;gap:10px;margin-top:14px;}

.whatsapp-link{color:#1DA851;font-weight:800;text-decoration:none;}
.whatsapp-link:hover{text-decoration:underline;}

/* ---------- DIRECTORIO ---------- */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;}
@media (max-width:860px){.two-col{grid-template-columns:1fr;}}
.form-card{padding:26px;}
.form-row{margin-bottom:14px;}
label{display:block;font-size:0.8125rem;font-weight:700;color:var(--marino);margin-bottom:6px;}
.privacy-note{font-size:0.78125rem;color:var(--tenue);line-height:1.5;margin-top:4px;}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.chip{
  font-size:0.8125rem;font-weight:700;padding:8px 14px;border-radius:999px;border:2px solid var(--linea);
  background:#fff;cursor:pointer;color:var(--marino);
}
.chip.active{background:var(--marino);border-color:var(--marino);color:#fff;}
.therapist-list{display:flex;flex-direction:column;gap:12px;max-height:520px;overflow-y:auto;padding-right:4px;}
.t-card{padding:16px 18px;display:flex;gap:14px;align-items:flex-start;}
.t-avatar{
  width:42px;height:42px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;
  font-weight:800;color:#fff;font-size:1rem;
}
.t-name{font-weight:800;color:var(--marino);font-size:0.9375rem;margin:0 0 2px;}
.t-meta{font-size:0.78125rem;color:var(--tenue);margin:0 0 6px;}
.t-desc{font-size:0.84375rem;color:var(--grafito);margin:0 0 8px;line-height:1.5;}
.t-contact{display:flex;gap:10px;flex-wrap:wrap;font-size:0.78125rem;font-weight:700;}
.t-contact a{color:var(--azul);text-decoration:none;}
.t-contact a:hover{text-decoration:underline;}
.empty-state{padding:28px;text-align:center;color:var(--tenue);font-size:0.875rem;}

/* ---------- DONACIONES ---------- */
.give-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start;}
@media (max-width:860px){.give-grid{grid-template-columns:1fr;}}
.need-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:12px;}
.need-list li{display:flex;gap:12px;align-items:flex-start;font-size:0.90625rem;line-height:1.5;}
.need-dot{width:10px;height:10px;border-radius:3px;margin-top:6px;flex:none;}
/* ---------- Puntos de donación: subir foto + IA ---------- */
.upload-drop{
  position:relative;border:2px dashed var(--linea);border-radius:var(--radius);
  padding:22px;text-align:center;margin-bottom:10px;background:var(--crema);
  transition:border-color .15s ease,background .15s ease;
}
.upload-drop:focus-within{border-color:var(--azul);}
.upload-drop input[type="file"]{
  position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;
}
.upload-icon{font-size:1.75rem;display:block;margin-bottom:6px;}
#ptoDropEmpty p{margin:0;font-size:0.84375rem;color:var(--tenue);line-height:1.5;}
.upload-preview{
  max-width:100%;max-height:220px;border-radius:12px;display:block;margin:0 auto;
  box-shadow:0 8px 20px -12px rgba(27,58,107,.35);
}
.upload-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:6px;}
.upload-actions .btn{padding:10px 16px;font-size:0.84375rem;}
.ia-status{font-size:0.8125rem;font-weight:700;min-height:1.2em;margin:2px 0 16px;}
.ia-status[data-state="loading"]{color:var(--azul);}
.ia-status[data-state="ok"]{color:#1DA851;}
.ia-status[data-state="warn"]{color:var(--tenue);font-weight:600;}
.ia-status[data-state="error"]{color:var(--rojo);}

.tipo-fieldset{border:none;padding:0;margin:0 0 14px;}
.tipo-fieldset legend{
  font-weight:700;font-size:0.84375rem;color:var(--grafito);padding:0;margin-bottom:8px;
}
.chip-check-group{display:flex;flex-wrap:wrap;gap:8px;}
.chip-check{position:relative;}
.chip-check input{position:absolute;opacity:0;width:1px;height:1px;}
.chip-check span{
  display:inline-flex;align-items:center;font-family:'Raleway',sans-serif;font-weight:700;
  font-size:0.8125rem;background:#fff;border:1.5px solid var(--linea);border-radius:999px;
  padding:8px 14px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease;
}
.chip-check input:checked + span{background:var(--marino);border-color:var(--marino);color:#fff;}
.chip-check input:focus-visible + span{outline:3px solid var(--azul);outline-offset:2px;}

/* ---------- Tarjetas del directorio de puntos ---------- */
.p-card{padding:16px 18px;display:flex;gap:14px;align-items:flex-start;}
.p-photo{
  width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none;
  border:1px solid var(--linea);
}
.p-icon{
  width:56px;height:56px;border-radius:12px;flex:none;display:flex;align-items:center;
  justify-content:center;font-size:1.5rem;background:var(--crema);border:1px solid var(--linea);
}
.p-tags{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px;}
.p-tag{
  font-size:0.71875rem;font-weight:700;background:var(--crema);color:var(--marino);
  border:1px solid var(--linea);border-radius:999px;padding:3px 10px;
}
.p-notes{font-size:0.84375rem;color:var(--grafito);margin:0 0 8px;line-height:1.5;}
.p-photo-link{font-size:0.78125rem;font-weight:700;color:var(--azul);text-decoration:none;}
.p-photo-link:hover{text-decoration:underline;}

.confirm-box{
  display:none;background:#EEF9EE;border:1px solid #BFE6BF;border-radius:12px;padding:16px 18px;
  font-size:0.875rem;color:#276b27;font-weight:600;margin-top:14px;
}
.confirm-box.show{display:block;}

footer{padding:40px 0 60px;border-top:1px solid var(--linea);margin-top:20px;}
.foot-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
.foot-brand{font-weight:800;color:var(--marino);}
.foot-note{font-size:0.8125rem;color:var(--tenue);max-width:52ch;line-height:1.6;}

::-webkit-scrollbar{width:8px;}
::-webkit-scrollbar-thumb{background:var(--linea);border-radius:8px;}

:focus-visible{outline:3px solid var(--azul);outline-offset:2px;}
@media (prefers-reduced-motion:reduce){*{transition:none!important;}}

/* Buscador adicional de rutinas: ARASAAC primero + IA solo como respaldo. */
.mini-picker-search{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px;}
.mini-picker-search input{flex:1 1 220px;min-width:180px;border:1px solid var(--linea);border-radius:10px;padding:11px 12px;background:#fff;font:inherit;color:var(--marino);}
.mini-picker-search .btn{padding:10px 14px;}
.picto-ai-badge{font-size:.68rem;color:var(--tenue);margin-top:2px;}

/* ---------- HISTORIA SOCIAL ---------- */
.social-story-card{padding:22px;}
.social-story-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;}
.social-story-toolbar strong{display:block;color:var(--marino);font-size:1.1rem;}
.story-source{display:block;color:var(--tenue);font-size:.78rem;margin-top:3px;}
.story-slides{position:relative;min-height:300px;border:2px solid var(--linea);border-radius:18px;background:#fff;overflow:hidden;}
.story-slide{display:none;min-height:300px;padding:38px 34px;text-align:center;align-items:center;justify-content:center;flex-direction:column;}
.story-slide.active{display:flex;}
.story-number{position:absolute;top:14px;left:14px;width:34px;height:34px;border-radius:50%;background:var(--azul);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;}
.story-slide-icon{font-size:4rem;line-height:1;margin-bottom:16px;}
.story-slide h3{margin:0 0 10px;color:var(--marino);font-size:1.4rem;}
.story-slide p{max-width:62ch;margin:0;line-height:1.6;color:var(--grafito);}
.story-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;}
.story-dots{display:flex;gap:7px;align-items:center;justify-content:center;}
.story-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--marino);background:#fff;padding:0;cursor:pointer;}
.story-dot.active{background:var(--marino);}
@media(max-width:600px){.story-slide{padding:34px 20px;}.story-controls{flex-wrap:wrap;}.story-dots{order:3;width:100%;}.story-slide-icon{font-size:3.2rem;}}
/* Identidad visual colombiaTEAyudo */
.brand{display:flex;align-items:center;gap:10px;line-height:1;text-decoration:none;}
.brand-logo{display:block;width:225px;height:auto;max-height:62px;object-fit:contain;}
@media (max-width:760px){.brand-logo{width:190px;max-height:54px;}}
