/* LokyApps shared UI core */
:root{--loky-core-green:#39a900;--loky-core-ink:#0f172a;--loky-core-muted:#64748b;--loky-core-line:#dbe4ee;--loky-core-soft:#f7fafc}
.loky-shared-splash{position:fixed;inset:0;z-index:2147483646;display:grid;place-items:center;background:radial-gradient(circle at center,#fff 0%,#f6f8fb 62%,#e9eef5 100%);animation:lokyCreatorSplashOut 3s linear forwards;pointer-events:auto}
.loky-shared-splash-card{display:grid;place-items:center;gap:14px;text-align:center;animation:lokyCreatorZoom 3s cubic-bezier(.22,.75,.25,1) forwards}
.loky-shared-splash-card img{width:min(28vw,210px);height:min(28vw,210px);object-fit:contain;filter:none!important;image-rendering:auto;background:transparent!important}
.loky-shared-splash-card strong{font:900 clamp(23px,4vw,38px)/1.05 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.03em}.loky-splash-word{color:#0f2747}.loky-splash-game{color:#39a900}.loky-splash-word+.loky-splash-game{margin-left:0}
@keyframes lokyCreatorZoom{0%{opacity:0;transform:scale(.72)}18%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1.04)}100%{opacity:0;transform:scale(.86)}}
@keyframes lokyCreatorSplashOut{0%,99%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden;pointer-events:none}}
@media(prefers-reduced-motion:reduce){.loky-shared-splash,.loky-shared-splash-card{animation-duration:.2s!important}}
.loky-config-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;min-height:40px!important;padding:9px 14px!important;border-radius:12px!important;border:1px solid color-mix(in srgb,var(--loky-core-green) 45%,#cbd5e1)!important;background:var(--loky-core-green)!important;color:#fff!important;font:800 13px/1 system-ui,-apple-system,"Segoe UI",sans-serif!important;cursor:pointer!important;white-space:nowrap!important;box-shadow:0 8px 18px rgba(57,169,0,.14)!important}
.loky-config-btn:hover{filter:brightness(.96)}
.loky-original-action-hidden{display:none!important}
.loky-core-modal{position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.56);backdrop-filter:blur(5px)}
.loky-core-modal.is-open{display:flex}
.loky-core-panel{width:min(760px,calc(100vw - 28px));max-height:90dvh;overflow:auto;background:#fff;border:1px solid var(--loky-core-line);border-radius:24px;box-shadow:0 30px 90px rgba(15,23,42,.28);color:var(--loky-core-ink)}
.loky-core-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 19px;border-bottom:1px solid var(--loky-core-line);background:#fff}
.loky-core-head h2{margin:0;font:900 20px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif}.loky-core-head p{margin:4px 0 0;color:var(--loky-core-muted);font:600 12px/1.4 system-ui}
.loky-core-close{width:40px;height:40px;border-radius:12px;border:1px solid var(--loky-core-line);background:#fff;font-size:20px;cursor:pointer}
.loky-core-body{padding:18px;display:grid;gap:12px}.loky-core-section{border:1px solid var(--loky-core-line);border-radius:16px;background:#fff;overflow:hidden}.loky-core-section>button{width:100%;display:flex;align-items:center;gap:10px;padding:14px 15px;border:0;background:#fff;text-align:left;color:var(--loky-core-ink);font:850 14px/1.2 system-ui;cursor:pointer}.loky-core-section>button:hover{background:#f8fafc}.loky-core-section small{display:block;margin-top:3px;color:var(--loky-core-muted);font-weight:600}.loky-core-inline{padding:14px 15px;border-top:1px solid var(--loky-core-line);background:#fbfdff}.loky-core-inline[hidden]{display:none!important}
.loky-core-check{display:flex;align-items:flex-start;gap:10px;margin:9px 0;font:700 13px/1.4 system-ui;color:#334155}.loky-core-check input{width:auto!important;min-height:auto!important;margin-top:2px}.loky-core-note{margin:8px 0;color:#64748b;font:600 12px/1.5 system-ui}.loky-core-danger{background:#fff7ed!important;color:#9a3412!important}.loky-core-session-btn{border:1px solid #fdba74;background:#fff;color:#9a3412;border-radius:11px;padding:10px 12px;font-weight:850;cursor:pointer}
.loky-privacy-card{margin:14px 0;padding:15px 16px;border:1px solid #b9e7a5;border-left:4px solid var(--loky-core-green);border-radius:14px;background:#f6ffeF;color:#17310d;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;text-align:left}.loky-privacy-card .loky-privacy-title{text-align:center;font-weight:900;font-size:14px;margin-bottom:5px}.loky-privacy-card .loky-privacy-message{text-align:center;font-size:12px;line-height:1.45;margin-bottom:12px}.loky-privacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}.loky-privacy-grid label{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;font-size:12px!important;font-weight:750!important}.loky-privacy-grid input{width:auto!important;min-height:auto!important}.loky-privacy-fixed{opacity:.72}.loky-privacy-card .loky-privacy-hint{grid-column:1/-1;font-size:11px;color:#527043;text-align:center;margin-top:4px}
.loky-click-home{cursor:pointer}
@media(max-width:720px){.loky-privacy-grid{grid-template-columns:1fr}.loky-config-btn{width:auto!important}.loky-core-panel{max-height:94dvh}}
/* Header-specific normalization */
body[data-loky-app="quizzimage"]>header{position:relative;padding-right:170px}
body[data-loky-app="quizzimage"]>header>.loky-config-btn{position:absolute!important;right:18px;top:18px;z-index:5}
@media(max-width:700px){body[data-loky-app="quizzimage"]>header{padding-right:16px;padding-top:72px}body[data-loky-app="quizzimage"]>header>.loky-config-btn{top:14px;right:14px}}

.loky-privacy-card{text-align:center!important;width:100%!important;grid-column:1/-1!important}.loky-privacy-title,.loky-privacy-message{text-align:center!important}
body[data-loky-app="quizzimage"] .loky-shared-splash-card .loky-splash-game,
body[data-loky-app="ronda-saberes"] .loky-shared-splash-card .loky-splash-game{margin-left:.18em}

/* v2.0.3 · progreso del splash principal (0→100 desde el centro hacia afuera) */
.loky-shared-progress{width:min(210px,58vw);display:grid;gap:6px;margin-top:3px}.loky-shared-progress-track{height:5px;border-radius:999px;background:#dbe4ee;overflow:hidden;position:relative}.loky-shared-progress-fill{position:absolute;inset:0;border-radius:inherit;background:#39a900;transform:scaleX(0);transform-origin:50% 50%;will-change:transform}.loky-shared-progress-pct{font:800 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;color:#64748b;letter-spacing:.08em;text-align:center}

/* v2.0.4 · privacidad unificada, controles tipo switch y contraste de marca */
:root{--loky-brand-contrast:#fff}
.loky-config-btn{color:var(--loky-brand-contrast,#fff)!important}
.loky-core-privacy-section{overflow:visible!important}.loky-core-privacy-heading{display:flex;align-items:center;gap:10px;padding:14px 15px;color:var(--loky-core-ink);font:850 14px/1.2 system-ui}.loky-core-privacy-heading small{display:block;margin-top:3px;color:var(--loky-core-muted);font-weight:600}.loky-core-privacy-inline{padding:0!important;border-top:1px solid var(--loky-core-line)!important;background:#fff!important}
.loky-privacy-card{margin:14px 0!important;padding:0!important;border:0!important;background:transparent!important;color:#17310d!important;text-align:initial!important;width:100%!important;grid-column:1/-1!important}
.loky-privacy-module{width:100%;box-sizing:border-box;padding:13px 16px;border:1.5px solid #177643;border-left-width:5px;border-radius:19px;background:linear-gradient(135deg,#effff6,#ddf7e8);color:#12281d;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;box-shadow:0 1px 0 rgba(255,255,255,.9) inset}
.loky-privacy-module-title{display:flex;align-items:center;justify-content:center;gap:7px;font-size:clamp(15px,1.45vw,19px);font-weight:900;text-align:center;margin-bottom:8px}.loky-privacy-module-title span{font-size:.9em}
.loky-privacy-module-message{padding:8px 11px;border:1px solid rgba(23,118,67,.22);border-radius:8px;background:rgba(23,118,67,.08);font-size:clamp(11px,1vw,13px);line-height:1.35;text-align:center;margin-bottom:10px}
.loky-privacy-required{font-size:clamp(12px,1.05vw,14px);margin:0 0 10px}.loky-privacy-required span{color:#458a68;font-weight:700}
.loky-privacy-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px;align-items:center}
.loky-privacy-switch{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;font-size:clamp(12px,1.05vw,14px)!important;font-weight:700!important;cursor:pointer!important;color:#15251d!important;min-width:0}
.loky-privacy-switch input{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;min-height:0!important}
.loky-switch-ui{position:relative;flex:0 0 42px;width:42px;height:24px;border-radius:999px;background:#aebfb5;box-shadow:inset 0 0 0 1px rgba(15,23,42,.10);transition:.18s ease}.loky-switch-ui::after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(15,23,42,.22);transition:.18s ease}.loky-privacy-switch input:checked+.loky-switch-ui{background:#7fc61e}.loky-privacy-switch input:checked+.loky-switch-ui::after{transform:translateX(18px)}.loky-privacy-switch input:focus-visible+.loky-switch-ui{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}
.loky-privacy-module-hint{text-align:center;margin-top:10px;font-size:clamp(10px,.95vw,12px);line-height:1.35;color:#314e3d}
@media(max-width:640px){.loky-privacy-module{padding:12px;border-radius:16px}.loky-privacy-switches{grid-template-columns:1fr}.loky-switch-ui{flex-basis:42px;width:42px;height:24px}.loky-switch-ui::after{width:18px;height:18px}.loky-privacy-switch input:checked+.loky-switch-ui::after{transform:translateX(18px)}}

/* v2.0.4b · formularios de participante y contraste accesible */
.lokyParticipantInput{border:1px solid #cbd5e1!important;background:#fff!important;color:#0f172a!important;font-size:15px!important;line-height:1.25!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important}
.lokyParticipantInput:focus{outline:3px solid rgba(37,99,235,.16)!important;outline-offset:1px!important;border-color:#94a3b8!important}
.btn.primary,.btn-primary,button.primary{color:var(--loky-brand-contrast,#fff)!important}
