
@font-face{font-family:CE_AppCanted;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_RuntimeCanted;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_CantedStage85;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_CantedStage87;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}


@font-face{font-family:CE_LocalCanted;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_LocalJar;src:url('../assets/fuente.jarofhearts.otf') format('opentype');font-display:block;}
@font-face{font-family:CE_LocalCabin;src:url('../assets/fuente.cabin.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_LocalOld;src:url('../assets/fuente.old.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_LocalDigital;src:url('../assets/fuente.digital.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_LocalRoboto;src:url('../assets/fuente.roboto.ttf') format('truetype');font-display:swap;}
@font-face{font-family:CE_LocalStamp;src:url('../assets/fuente.stamp.otf') format('opentype');font-display:block;}
@font-face{font-family:CE_LocalRedonda;src:url('../assets/fuente.redonda.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_LocalBricksBold;src:url('../assets/fuente.bricksbold.otf') format('opentype');font-display:block;}
@font-face{font-family:CE_LocalNeoSansStdBoldItalic;src:url('../assets/fuente.neosansstdbolditalic.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_LocalBestFriends;src:url('../assets/fuente.best.friends.otf') format('opentype');font-display:block;}
@font-face{font-family:CE_LocalDot;src:url('../assets/fuente.dot.ttf') format('truetype');font-display:block;}

.game .speechPortrait{background-size:cover;background-position:center center;background-repeat:no-repeat;}
.game .tutorialLegacyTopBar .topIcon{position:absolute;border-radius:8px;}
.game .tutorialLegacyTopBar .topIcon img{width:100%;height:100%;object-fit:contain;}


@font-face{font-family:CE_Canted;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_Jar;src:url('../assets/fuente.jarofhearts.otf') format('opentype');font-display:block;}
@font-face{font-family:CE_Cabin;src:url('../assets/fuente.cabin.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_Old;src:url('../assets/fuente.old.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_Digital;src:url('../assets/fuente.digital.ttf') format('truetype');font-display:block;}
@font-face{font-family:CE_Roboto;src:url('../assets/fuente.roboto.ttf') format('truetype');font-display:swap;}
@font-face{font-family:CE_Stamp;src:url('../assets/fuente.stamp.otf') format('opentype');font-display:block;}


@font-face{
  font-family:CE_Redonda;
  src:url('../assets/fuente.redonda.ttf') format('truetype');
  font-display:block;
}
@font-face{
  font-family:CE_Jar;
  src:
    url('/shared_assets/fonts/fuente.jarofhearts.otf') format('opentype'),
    url('../../shared_assets/fonts/fuente.jarofhearts.otf') format('opentype'),
    url('../../../shared_assets/fonts/fuente.jarofhearts.otf') format('opentype');
  font-display:block;
}
@font-face{
  font-family:CE_Roboto;
  src:
    url('/shared_assets/fonts/fuente.roboto.ttf') format('truetype'),
    url('../../shared_assets/fonts/fuente.roboto.ttf') format('truetype'),
    url('../../../shared_assets/fonts/fuente.roboto.ttf') format('truetype');
  font-display:swap;
}
@font-face{
  font-family:CE_RobotoBold;
  src:
    url('/shared_assets/fonts/fuente.robotobold.ttf') format('truetype'),
    url('../../shared_assets/fonts/fuente.robotobold.ttf') format('truetype'),
    url('../../../shared_assets/fonts/fuente.robotobold.ttf') format('truetype');
  font-display:swap;
}
@font-face{
  font-family:CE_Digital;
  src:
    url('/shared_assets/fonts/fuente.digital.ttf') format('truetype'),
    url('../../shared_assets/fonts/fuente.digital.ttf') format('truetype'),
    url('../../../shared_assets/fonts/fuente.digital.ttf') format('truetype');
  font-display:block;
}
@font-face{
  font-family:CE_Old;
  src:
    url('/shared_assets/fonts/fuente.old.ttf') format('truetype'),
    url('../../shared_assets/fonts/fuente.old.ttf') format('truetype'),
    url('../../../shared_assets/fonts/fuente.old.ttf') format('truetype');
  font-display:block;
}

:root{
  --phone-w:min(430px, 94vw);
  --phone-h:calc(var(--phone-w) * 16 / 9);
  --gold:#ffd45a;
  --panel:#20140b;
}
*{box-sizing:border-box}
body{
  margin:0;
  min-height:100vh;
  background:#120d09;
  color:#f6e7c8;
  font-family:CE_Roboto, system-ui, sans-serif;
}
.appShell{
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr minmax(300px, 420px);
  gap:18px;
  padding:18px;
  align-items:center;
}
.gameColumn{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}
.game{
  width:var(--phone-w);
  height:var(--phone-h);
  position:relative;
  overflow:hidden;
  border-radius:0;
  background:#070504;
  box-shadow:0 22px 70px rgba(0,0,0,.65);
}
.sceneRoot{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:
    linear-gradient(rgba(0,0,0,.04), rgba(0,0,0,.04)),
    url('../assets/fondo.jpg') center/cover no-repeat,
    #6d100d;
}
.topBar{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:7.6%;
  z-index:2000;
  background:linear-gradient(180deg, rgba(98,52,18,.96), rgba(24,13,7,.95));
  border-bottom:2px solid rgba(255,190,85,.42);
  box-shadow:0 4px 16px rgba(0,0,0,.62);
}
.topIcon{
  position:absolute;
  top:9%;
  width:7.2%;
  aspect-ratio:1/1;
  border:0;
  padding:0;
  border-radius:7px;
  background:rgba(0,0,0,.20);
  cursor:pointer;
  pointer-events:auto;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.72));
}
.topIcon img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}
.topIcon.active{
  background:rgba(144,80,22,.65);
  outline:2px solid rgba(255,219,104,.76);
  filter:drop-shadow(0 0 7px rgba(255,218,90,.85));
}
.topIcon.disabled{opacity:.35;filter:grayscale(.85) drop-shadow(0 2px 2px rgba(0,0,0,.72))}
.topIcon.map{left:1.8%}
.topIcon.info{left:11.2%}
.topIcon.music{left:20.7%}
.topIcon.sound{left:30.2%}
.topIcon.hint{left:47.9%}
.topIcon.inventory{left:60.9%}
.percent{
  position:absolute;
  right:2.2%;
  top:13%;
  height:70%;
  min-width:21.5%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#19f329;
  background:rgba(0,0,0,.48);
  border:1px solid rgba(0,130,28,.65);
  border-radius:4px;
  font:900 22px/1 CE_Digital, monospace;
  letter-spacing:1px;
  text-shadow:0 0 6px rgba(0,255,40,.92),0 0 12px rgba(0,255,40,.58);
}

.layer{
  position:absolute;
  transform-origin:center center;
}
.layer img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}
.textLayer{
  color:#fff;
  text-shadow:0 2px 2px rgba(0,0,0,.7);
  overflow:visible;
}
.textLayer .textInner{position:relative;z-index:2}
.textLayer.box{outline:1px dashed rgba(255,220,80,.8)}
.textLayer.speech,
.textLayer.narrative{
  font-family:CE_AppCanted, CE_CantedComic, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
}
.textLayer.instruction{
  font-family:CE_Jar, CE_Roboto, cursive !important;
}
.textLayer.paper{
  font-family:CE_Old, CE_Roboto, serif !important;
  color:#21170f !important;
  text-shadow:none !important;
}
.textLayer.graphicText{
  background-size:100% 100%;
  background-position:center;
  background-repeat:no-repeat;
  color:#21170f;
  text-shadow:none !important;
}
.textLayer.speech.graphicText,
.textLayer.speech.graphicText span,
.textLayer.narrative.graphicText span{
  color:inherit;
}

.contextButton{
  position:absolute;
  right:3.5%;
  bottom:4.2%;
  z-index:2500;
  width:17%;
  aspect-ratio:1/1;
  border:0;
  padding:0;
  cursor:pointer;
  background:transparent url('../assets/icono.flecha.png') center/contain no-repeat;
  filter:drop-shadow(0 7px 4px rgba(0,0,0,.65));
}
.contextButton.locked{
  opacity:.36;
  filter:grayscale(.8) drop-shadow(0 4px 4px rgba(0,0,0,.62));
}
.contextButton.hidden{display:none}
.contextButton.object{
  background-image:url('../assets/icono.objeto1.png');
}
.statusBar{
  width:var(--phone-w);
  min-height:28px;
  border:1px solid rgba(255,204,110,.28);
  background:rgba(16,11,7,.88);
  color:#f7d38a;
  border-radius:12px;
  padding:7px 10px;
  font:700 12px/1.15 CE_Roboto, sans-serif;
}
.toast{
  position:absolute;
  left:50%;
  top:9%;
  transform:translateX(-50%);
  z-index:3000;
  padding:8px 12px;
  color:#fff1b8;
  background:rgba(0,0,0,.74);
  border-radius:999px;
  font:700 12px/1 CE_Roboto, sans-serif;
  opacity:0;
  transition:opacity .15s ease;
  pointer-events:none;
}
.toast.show{opacity:1}

.spinnerPanel,.inputPanel,.tutorialGate{
  position:absolute;
  left:7%;
  right:7%;
  bottom:8%;
  z-index:2400;
  background:linear-gradient(180deg, rgba(37,24,13,.95), rgba(12,8,5,.94));
  border:3px solid rgba(255,214,124,.68);
  border-radius:22px;
  padding:15px 14px 16px;
  box-shadow:0 18px 42px rgba(0,0,0,.72);
  color:#fff4d0;
  text-align:center;
  pointer-events:auto;
}
.spinnerPanel.done,.inputPanel.solved,.tutorialGate.done{border-color:rgba(144,255,144,.78)}
.spinnerPanel h3,.inputPanel h3{
  margin:0 0 8px;
  color:#ffe49b;
  font:700 25px/1.05 CE_CantedComicBold, CE_CantedComic, sans-serif;
}
.spinnerDisc{
  width:112px;height:112px;margin:10px auto 8px;border-radius:50%;
  background:radial-gradient(circle at 35% 28%, rgba(255,255,255,.35), transparent 24%),linear-gradient(135deg,#ceb66f,#6d4c18);
  border:5px solid #2d1b0d; box-shadow:0 8px 0 rgba(0,0,0,.32), inset 0 0 0 4px rgba(255,245,178,.25);
  display:flex;align-items:center;justify-content:center;
  font:900 38px/1 CE_CantedComicBold, CE_CantedComic, sans-serif;color:#211307;
  user-select:none;touch-action:none;transition:transform .18s ease;
}
.spinnerDisc.done{transform:rotateY(180deg) rotate(-6deg);background:radial-gradient(circle at 35% 28%, rgba(255,255,255,.35), transparent 24%),linear-gradient(135deg,#a4a4a4,#4a4a4a)}
.inputPanel .prompt{font:18px/1.1 CE_CantedComic, CE_Roboto, sans-serif;margin:0 0 10px;color:#f4dfb4}
.inputPanel input{
  width:100%;display:block;text-align:center;
  font:34px/1.1 CE_RobotoBold, CE_Roboto, monospace;
  letter-spacing:4px;background:#070504;color:#fff7bd;
  border:2px solid #b98b3c;border-radius:14px;padding:11px 8px;text-transform:uppercase;outline:none;
}
.keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:11px}
.keypad.alpha{grid-template-columns:repeat(6,1fr)}
.keypad button,.inputActions button,.hintNav button,.completeCard button{
  border:0;border-radius:10px;background:#f2c55c;color:#211308;padding:9px 4px;min-height:34px;
  font:900 13px/1 CE_RobotoBold, CE_Roboto, sans-serif;cursor:pointer;box-shadow:0 3px 0 rgba(0,0,0,.35);
}
.inputActions{display:flex;gap:8px;justify-content:center;margin-top:10px}
.inputStatus{margin-top:9px;font:800 13px/1.2 CE_RobotoBold, sans-serif;color:#ffb184}
.inputPanel.solved .inputStatus{color:#9dff9d}
.tutorialGate{font:22px/1.1 CE_CantedComic, CE_Roboto, sans-serif}
.hintOverlay,.mapOverlay,.completeOverlay{
  position:absolute;inset:0;z-index:3200;background:rgba(0,0,0,.52);
  display:flex;align-items:center;justify-content:center;padding:7%;
}
.hintPanel,.mapPanel,.completeCard{
  position:relative;width:94%;max-height:82%;overflow:auto;
  background:rgba(245,229,191,.97);
  border:4px solid rgba(0,0,0,.72);
  color:#25160b;border-radius:24px;padding:24px 20px;text-align:center;
  box-shadow:0 24px 60px rgba(0,0,0,.72);
}
.hintPanel h2,.mapPanel h2,.completeCard h2{
  margin:0 0 10px;font:700 34px/1 CE_CantedComicBold, CE_CantedComic, sans-serif;color:#25160b;
}
.hintText{font:26px/1.1 CE_CantedComic, CE_Roboto, sans-serif}
.hintCount{font:800 12px/1 CE_RobotoBold, sans-serif;color:#7c4d1b;margin-bottom:10px}
.hintImage{width:100%;max-height:42vh;object-fit:contain;border-radius:14px;box-shadow:0 9px 20px rgba(0,0,0,.45)}
.closeOverlay{
  position:absolute;right:12px;top:10px;width:42px;height:42px;border:0;border-radius:50%;
  background:#1b120b;color:#ffd45a;font:900 24px/42px CE_RobotoBold, sans-serif;cursor:pointer;
}
.hintNav{display:flex;justify-content:center;gap:10px;margin-top:14px}
.mapGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.mapCard{background:rgba(255,248,221,.82);border:3px solid rgba(32,20,11,.72);border-radius:18px;padding:12px 8px;min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.mapCard img{width:46px;height:46px;object-fit:contain;margin-bottom:8px}
.mapCard .title{font:22px/1.05 CE_CantedComic, CE_Roboto, sans-serif}
.mapCard .state{margin-top:6px;font:700 11px/1 CE_RobotoBold,sans-serif;color:#865116}
.debugToggle{
  position:fixed;right:18px;top:18px;z-index:5000;border:1px solid rgba(255,204,110,.42);background:#24170e;color:#ffd58a;border-radius:12px;padding:7px 10px;font:700 12px/1 CE_Roboto,sans-serif;cursor:pointer;
}
.debugPanel{
  align-self:stretch;max-height:calc(100vh - 36px);overflow:auto;background:#24170e;border:1px solid rgba(255,204,110,.32);border-radius:16px;padding:14px;color:#f0ddbd;
}
.debugPanel.collapsed{display:none}
.debugPanel h1{font:700 20px/1.1 CE_RobotoBold,sans-serif;color:#ffd58a;margin:0 0 8px}
.debugPanel label{display:block;margin:10px 0 4px}
.debugPanel select,.debugPanel button{background:#120d09;color:#f6e7c8;border:1px solid #7a5a2e;border-radius:8px;padding:7px}
.debugRow{display:flex;gap:8px}
.debugPanel pre{white-space:pre-wrap;background:#100a06;border-radius:10px;padding:10px;font-size:11px}
@media(max-width:900px){
  .appShell{grid-template-columns:1fr;padding:12px}
  .debugPanel{display:none}
  .debugPanel.open{display:block}
}

body.phase1Clean .debugPanel{display:none}
body.phase1Clean .debugPanel.open{display:block;position:fixed;right:18px;top:58px;bottom:18px;width:min(420px,calc(100vw - 36px));z-index:5200}
body.phase1Clean .appShell{grid-template-columns:1fr}
body.phase1Clean .gameColumn{min-height:100vh;justify-content:center}
.stage105Badge{position:fixed;left:18px;bottom:18px;z-index:5000;background:rgba(16,11,7,.86);color:#f7d38a;border:1px solid rgba(255,204,110,.28);border-radius:12px;padding:7px 10px;font:700 12px/1.2 CE_Roboto,system-ui,sans-serif;pointer-events:none}
.contextButton.locked::after{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(255,214,90,.18)}
.statusBar{text-align:center}
.topIcon:active,.contextButton:active{transform:scale(.94)}
.hintPanel,.mapPanel,.completeCard{max-width:390px}
.inputPanel{max-height:61%;overflow:auto}
.keypad button:hover,.inputActions button:hover,.hintNav button:hover,.completeCard button:hover{filter:brightness(1.08)}

.phase2Badge{position:fixed;left:18px;bottom:18px;z-index:5000;background:rgba(16,11,7,.86);color:#f7d38a;border:1px solid rgba(255,204,110,.28);border-radius:12px;padding:7px 10px;font:700 12px/1.2 CE_Roboto,system-ui,sans-serif;pointer-events:none}
body .debugPanel{display:none}
body .debugPanel.open{display:block;position:fixed;right:18px;top:58px;bottom:18px;width:min(420px,calc(100vw - 36px));z-index:5200}
body .appShell{grid-template-columns:1fr}
body .gameColumn{min-height:100vh;justify-content:center}

.fontStatusBadge{position:absolute;left:50%;top:8.4%;transform:translateX(-50%);z-index:2600;background:rgba(0,0,0,.72);border:1px solid rgba(255,214,124,.4);color:#ffd58a;border-radius:999px;padding:5px 9px;font:700 10px/1 CE_Roboto,system-ui,sans-serif;pointer-events:none}
.fontStatusBadge.ok{display:none}

.symbolSpinnerPanel{
  position:absolute;
  left:7%;
  right:7%;
  bottom:7%;
  z-index:2400;
  background:linear-gradient(180deg, rgba(37,24,13,.95), rgba(12,8,5,.94));
  border:3px solid rgba(255,214,124,.68);
  border-radius:22px;
  padding:15px 14px 16px;
  box-shadow:0 18px 42px rgba(0,0,0,.72);
  color:#fff4d0;
  text-align:center;
  pointer-events:auto;
}
.symbolSpinnerPanel.done{border-color:rgba(144,255,144,.78)}
.symbolSpinnerPanel h3{
  margin:0 0 8px;
  color:#ffe49b;
  font:700 25px/1.05 CE_CantedComicBold, CE_CantedComic, sans-serif;
}
.symbolSpinnerPanel p{
  margin:0 0 12px;
  font:18px/1.1 CE_CantedComic, CE_Roboto, sans-serif;
  color:#f4dfb4;
}
.symbolSpinnerGrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin:12px 0 10px;
}
.symbolSpinnerCell{
  min-height:86px;
  border:3px solid rgba(255,214,124,.72);
  border-radius:18px;
  background:
    radial-gradient(circle at 35% 25%, rgba(255,255,255,.25), transparent 22%),
    linear-gradient(160deg,#6c4216,#1b1008);
  color:#ffe9a6;
  box-shadow:0 6px 0 rgba(0,0,0,.38), inset 0 0 0 3px rgba(255,245,178,.08);
  cursor:pointer;
}
.symbolSpinnerCell span{
  display:block;
  font:900 38px/1 CE_CantedComicBold, CE_CantedComic, serif;
  text-shadow:0 2px 3px rgba(0,0,0,.75);
}
.symbolSpinnerCell small{
  display:block;
  margin-top:5px;
  font:800 11px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  color:#ffce66;
  opacity:.85;
}
.symbolSpinnerCell:active{
  transform:translateY(3px);
  box-shadow:0 3px 0 rgba(0,0,0,.38), inset 0 0 0 3px rgba(255,245,178,.08);
}
.symbolSpinnerActions{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:10px;
}
.symbolSpinnerActions button{
  border:0;
  border-radius:10px;
  background:#f2c55c;
  color:#211308;
  padding:9px 12px;
  min-height:34px;
  font:900 13px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  cursor:pointer;
  box-shadow:0 3px 0 rgba(0,0,0,.35);
}


.coinSwipeHotspot{
  position:absolute;
  z-index:2500;
  pointer-events:auto;
  cursor:grab;
  touch-action:none;
  border-radius:50%;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.55));
}
.coinSwipeHotspot.dragging{cursor:grabbing; transform:scale(1.04)}
.coinSwipeHotspot .coinFace{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  transition:transform .42s ease, opacity .42s ease;
  backface-visibility:hidden;
}
.coinSwipeHotspot .back{
  opacity:0;
  transform:rotateY(180deg);
}
.coinSwipeHotspot.done .front{
  opacity:0;
  transform:rotateY(180deg);
}
.coinSwipeHotspot.done .back{
  opacity:1;
  transform:rotateY(0deg);
}
.coinSwipeLabel{
  position:absolute;
  left:50%;
  top:100%;
  transform:translateX(-50%);
  margin-top:6px;
  background:rgba(0,0,0,.68);
  color:#ffe49b;
  border:1px solid rgba(255,214,124,.5);
  border-radius:999px;
  padding:5px 9px;
  font:800 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  white-space:nowrap;
}


.imageSpinnerPanel{
  position:absolute;
  left:5.5%;
  right:5.5%;
  bottom:6.2%;
  z-index:2400;
  background:linear-gradient(180deg, rgba(37,24,13,.96), rgba(10,6,4,.96));
  border:3px solid rgba(255,214,124,.68);
  border-radius:22px;
  padding:13px 12px 14px;
  box-shadow:0 18px 44px rgba(0,0,0,.72);
  color:#fff4d0;
  text-align:center;
  pointer-events:auto;
}
.imageSpinnerPanel.done{border-color:rgba(144,255,144,.78)}
.imageSpinnerPanel h3{
  margin:0 0 6px;
  color:#ffe49b;
  font:700 25px/1.05 CE_CantedComicBold, CE_CantedComic, sans-serif;
}
.imageSpinnerPanel p{
  margin:0 0 8px;
  font:18px/1.1 CE_CantedComic, CE_Roboto, sans-serif;
  color:#f4dfb4;
}
.imageSpinnerGrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  margin:8px 0 8px;
}
.imageSpinnerCell{
  position:relative;
  min-height:142px;
  touch-action:none;
  user-select:none;
  cursor:grab;
  border-radius:16px;
}
.imageSpinnerCell.dragging{cursor:grabbing; transform:scale(1.02)}
.imageSpinnerFrame{
  position:relative;
  height:96px;
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(160deg,#50310f,#140b05);
  border:2px solid rgba(255,214,124,.38);
  box-shadow:inset 0 0 0 3px rgba(255,245,178,.06), 0 6px 0 rgba(0,0,0,.36);
}
.imageSpinnerFrame .frameImg{
  position:absolute;
  inset:-18% -42%;
  width:184%;
  height:136%;
  object-fit:fill;
  opacity:.86;
}
.imageSpinnerFrame .symbolImg{
  position:absolute;
  left:50%;
  top:50%;
  width:78%;
  height:78%;
  object-fit:contain;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 5px 5px rgba(0,0,0,.62));
}
.swipeArrow{
  height:20px;
  color:#ffcf69;
  font:900 14px/20px CE_RobotoBold, CE_Roboto, sans-serif;
  text-shadow:0 2px 2px #000;
  opacity:.9;
}
.imageSpinnerCell small{
  display:block;
  margin-top:2px;
  font:800 11px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  color:#ffce66;
}
.imageSpinnerStatus{
  min-height:18px;
  font:800 14px/1.1 CE_RobotoBold, CE_Roboto, sans-serif;
  color:#ffe49b;
}
.imageSpinnerActions{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:8px;
}
.imageSpinnerActions button{
  border:0;
  border-radius:10px;
  background:#f2c55c;
  color:#211308;
  padding:9px 12px;
  min-height:34px;
  font:900 13px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  cursor:pointer;
  box-shadow:0 3px 0 rgba(0,0,0,.35);
}


.coinSwipeHotspot,
.coinSwipeHotspot *,
.imageSpinnerCell,
.imageSpinnerCell *,
.imageSpinnerFrame,
.imageSpinnerFrame *{
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
}
.coinSwipeHotspot{
  transform:translate(var(--coin-dx,0px), var(--coin-dy,0px)) rotate(var(--coin-rot,0deg));
  transition:transform .18s ease;
}
.coinSwipeHotspot.dragging{
  transition:none;
  cursor:grabbing;
}
.coinSwipeHotspot .coinFace{
  pointer-events:none;
  -webkit-user-drag:none;
}
.imageSpinnerFrame img{
  pointer-events:none;
  -webkit-user-drag:none;
}


.coinSwipeHotspot.dragging,
.coinFlipHotspot.dragging,
.imageSpinnerCell.dragging{
  transform:none !important;
}

.coinFlipHotspot,
.coinFlipHotspot *,
.nativeSpinnerSlot,
.nativeSpinnerSlot *{
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
}
.coinFlipHotspot{
  position:absolute;
  z-index:2500;
  pointer-events:auto;
  cursor:grab;
  touch-action:none;
  perspective:600px;
  transform:none !important;
}
.coinFlipHotspot.dragging{
  cursor:grabbing;
  transform:none !important;
}
.coinFlipInner{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
  transform:rotateY(var(--coin-flip-angle, 0deg));
  transition:transform .22s ease;
}
.coinFlipHotspot.dragging .coinFlipInner{
  transition:none;
}
.coinFlipHotspot.done .coinFlipInner{
  transform:rotateY(180deg);
  transition:transform .45s cubic-bezier(.2,.8,.2,1);
}
.coinFlipHotspot .coinFace{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  backface-visibility:hidden;
  pointer-events:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.55));
}
.coinFlipHotspot .back{
  transform:rotateY(180deg);
}
.coinFlipHotspot .coinSwipeLabel{
  position:absolute;
  left:50%;
  top:100%;
  transform:translateX(-50%);
  margin-top:6px;
  background:rgba(0,0,0,.68);
  color:#ffe49b;
  border:1px solid rgba(255,214,124,.5);
  border-radius:999px;
  padding:5px 9px;
  font:800 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  white-space:nowrap;
  pointer-events:none;
}

.nativeSpinnerOverlay{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
}
.nativeSpinnerSlot{
  position:absolute;
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
  overflow:hidden;
  background:transparent;
  border:0;
  box-shadow:none;
}
.nativeSpinnerSlot.dragging{
  cursor:grabbing;
}
.nativeSpinnerImg{
  position:absolute;
  left:50%;
  top:50%;
  max-width:74%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  transform:translateY(0);
  pointer-events:none;
  -webkit-user-drag:none;
  user-select:none;
  filter:drop-shadow(0 4px 4px rgba(0,0,0,.48));
}
.nativeSpinnerImg.current,
.nativeSpinnerImg.incoming{
  transform:translate(-50%,-50%);
}
.nativeSpinnerImg.incoming{
  opacity:0;
}

/* Hide old semireal spinner chrome if a stale browser keeps CSS/classes around */
.imageSpinnerPanel,
.symbolSpinnerPanel{
  display:none;
}


.nativeSpinnerSlot{overflow:visible !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
.nativeSpinnerBase{position:absolute;left:0;top:50%;width:100%;height:auto;object-fit:contain;transform:translateY(-50%);pointer-events:none;user-select:none;-webkit-user-drag:none;filter:none;}
.nativeSpinnerReel{position:absolute;inset:0;overflow:hidden;pointer-events:none;}
.nativeSpinnerImg{max-width:58% !important;max-height:70% !important;width:auto !important;height:auto !important;object-fit:contain !important;filter:drop-shadow(0 9px 8px rgba(0,0,0,.62)) !important;}
.nativeSpinnerImg.current,.nativeSpinnerImg.incoming{left:50%;top:50%;transform:translate(-50%, -50%);}
.imageSpinnerActions,.symbolSpinnerActions{display:none !important;}


.sideDevPanel{position:fixed;right:14px;top:88px;width:158px;z-index:9000;padding:10px;border-radius:14px;background:rgba(13,13,16,.88);border:1px solid rgba(255,214,124,.35);box-shadow:0 12px 28px rgba(0,0,0,.45);color:#ffe7a6;font-family:CE_Roboto, system-ui, sans-serif;pointer-events:auto;}
.sideDevTitle{font:900 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#ffce66;margin-bottom:4px;}
.sideDevScene{font:900 18px/1 CE_RobotoBold, CE_Roboto, sans-serif;margin:0 0 8px;color:#fff4d0;}
.sideDevPanel button{display:block;width:100%;margin:5px 0;padding:8px 7px;border:0;border-radius:9px;background:#f2c55c;color:#231509;font:900 12px/1.05 CE_RobotoBold, CE_Roboto, sans-serif;cursor:pointer;box-shadow:0 2px 0 rgba(0,0,0,.35);}
.sideDevPanel hr{border:0;border-top:1px solid rgba(255,214,124,.22);margin:8px 0;}
@media (max-width: 1280px){.sideDevPanel{right:6px;top:70px;transform:scale(.88);transform-origin:top right;}}


.coinFlipHotspot.directional{
  position:absolute;
  z-index:2500;
  pointer-events:auto;
  cursor:grab;
  touch-action:none;
  perspective:650px;
  transform:none !important;
}
.coinFlipHotspot.directional.dragging{
  cursor:grabbing;
  transform:none !important;
}
.coinFlipHotspot.directional .coinFlipInner{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
  transform:rotateY(var(--coin-flip-angle, 0deg));
  transition:transform .20s ease;
}
.coinFlipHotspot.directional.dragging .coinFlipInner{transition:none}
.coinFlipHotspot.directional.done .coinFlipInner{
  transform:rotateY(var(--coin-final-angle, 180deg));
  transition:transform .48s cubic-bezier(.18,.78,.2,1);
}
.coinFlipHotspot.directional .coinFace{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  backface-visibility:hidden;
  pointer-events:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.55));
}
.coinFlipHotspot.directional .back{transform:rotateY(180deg)}
.coinFlipHotspot.directional .coinSwipeLabel{
  position:absolute;
  left:50%;
  top:100%;
  transform:translateX(-50%);
  margin-top:6px;
  background:rgba(0,0,0,.68);
  color:#ffe49b;
  border:1px solid rgba(255,214,124,.5);
  border-radius:999px;
  padding:5px 9px;
  font:800 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  white-space:nowrap;
  pointer-events:none;
}

.nativeSpinnerOverlay.calibrated{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
}
.nativeSpinnerSlot.calibrated{
  position:absolute;
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.nativeSpinnerSlot.calibrated.dragging{cursor:grabbing}
.nativeSpinnerBase.calibrated{
  position:absolute;
  left:0;
  top:var(--base-top, 24.4%);
  width:100%;
  height:var(--base-height, 51.1%);
  object-fit:contain;
  transform:none;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  filter:none;
}
.nativeSpinnerReel.calibrated{
  position:absolute;
  left:0;
  top:var(--base-top, 24.4%);
  width:100%;
  height:var(--base-height, 51.1%);
  overflow:hidden;
  pointer-events:none;
}
.nativeSpinnerImg.calibrated{
  position:absolute;
  left:50%;
  top:50%;
  width:auto !important;
  height:calc(100% * var(--symbol-scale, .68)) !important;
  max-width:95% !important;
  max-height:95% !important;
  object-fit:contain !important;
  transform:translate(-50%, calc(-50% + var(--symbol-y-offset, 0%)));
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}
.nativeSpinnerImg.incoming.calibrated{opacity:0}

/* Keep game clean; development controls stay outside canvas */
.imageSpinnerPanel,
.symbolSpinnerPanel,
.imageSpinnerActions,
.symbolSpinnerActions{
  display:none !important;
}

/* Side dev panel, only if not already present from previous stage */
.sideDevPanel{
  position:fixed;
  right:14px;
  top:88px;
  width:158px;
  z-index:9000;
  padding:10px;
  border-radius:14px;
  background:rgba(13,13,16,.88);
  border:1px solid rgba(255,214,124,.35);
  box-shadow:0 12px 28px rgba(0,0,0,.45);
  color:#ffe7a6;
  font-family:CE_Roboto, system-ui, sans-serif;
  pointer-events:auto;
}
.sideDevTitle{
  font:900 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#ffce66;
  margin-bottom:4px;
}
.sideDevScene{
  font:900 18px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  margin:0 0 8px;
  color:#fff4d0;
}
.sideDevPanel button{
  display:block;
  width:100%;
  margin:5px 0;
  padding:8px 7px;
  border:0;
  border-radius:9px;
  background:#f2c55c;
  color:#231509;
  font:900 12px/1.05 CE_RobotoBold, CE_Roboto, sans-serif;
  cursor:pointer;
  box-shadow:0 2px 0 rgba(0,0,0,.35);
}
.sideDevPanel button:hover{filter:brightness(1.06)}
.sideDevPanel hr{
  border:0;
  border-top:1px solid rgba(255,214,124,.22);
  margin:8px 0;
}
@media (max-width: 1280px){
  .sideDevPanel{
    right:6px;
    top:70px;
    transform:scale(.88);
    transform-origin:top right;
  }
}

  to{transform:scale(1.05);opacity:.82}
}


.contextButton.checkMode{
  opacity:1 !important;
  filter:none !important;
}
.contextButton.checkMode::after{
  content:none !important;
  display:none !important;
}


.nativeSpinnerOverlay.horizontal{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
}
.nativeSpinnerSlot.horizontal{
  position:absolute;
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
  overflow:visible;
  background:transparent;
  border:0;
  box-shadow:none;
}
.nativeSpinnerSlot.horizontal.dragging{cursor:grabbing}
.nativeSpinnerReel.horizontal{
  position:absolute;
  inset:0;
  overflow:hidden;
  pointer-events:none;
}
.nativeSpinnerImg.horizontal{
  position:absolute;
  left:50%;
  top:50%;
  width:auto !important;
  height:calc(100% * var(--symbol-scale, .8)) !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  transform:translate(-50%, -50%);
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}
.nativeSpinnerImg.incoming.horizontal{opacity:0}


.coinSwipeLabel{display:none !important;}
.nativeSpinnerSlot.horizontal{z-index:2460;}


.nativeSpinnerOverlay.mirror{pointer-events:none;}
.nativeSpinnerSlot.mirror{overflow:visible; pointer-events:auto; touch-action:none;}
.nativeSpinnerReel.mirror{position:relative; width:100%; height:100%; overflow:visible;}
.nativeSpinnerImg.mirror{transform-origin:center center; will-change:transform, opacity;}
.sceneRoot img, .game img{
  -webkit-user-drag:none !important;
  user-drag:none !important;
}
.nativeSpinnerOverlay.visibleHeads{
  position:absolute;
  inset:0;
  z-index:2800;
  pointer-events:none;
}
.nativeSpinnerSlot.visibleHeads{
  position:absolute;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.nativeSpinnerSlot.visibleHeads.dragging{cursor:grabbing}
.nativeSpinnerReel.visibleHeads{
  position:absolute;
  inset:0;
  overflow:visible !important;
  pointer-events:none !important;
}
.nativeSpinnerImg.visibleHeads{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  height:var(--symbol-height, 92%) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  opacity:1;
  pointer-events:none !important;
  -webkit-user-drag:none !important;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}


.game, .sceneRoot, .sceneRoot *, .game *{
  user-select:none !important;
  -webkit-user-select:none !important;
}
.sceneRoot img, .game img{
  -webkit-user-drag:none !important;
}
.nativeSpinnerOverlay.visibleHeads{
  position:absolute !important;
  inset:0 !important;
  z-index:2800 !important;
  pointer-events:none !important;
}
.nativeSpinnerSlot.visibleHeads{
  position:absolute !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.nativeSpinnerReel.visibleHeads{
  position:absolute !important;
  inset:0 !important;
  overflow:visible !important;
  pointer-events:none !important;
}
.nativeSpinnerImg.visibleHeads{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  height:var(--symbol-height, 92%) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}
.nativeSpinnerImg.incoming.visibleHeads{opacity:0}
.nativeSpinnerImg.boundedFlip{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  height:var(--symbol-height, 104%) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
  backface-visibility:hidden !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}


.nativeSpinnerOverlay.boundedFlip{
  position:absolute !important;
  inset:0 !important;
  z-index:2850 !important;
  pointer-events:none !important;
}
.nativeSpinnerSlot.boundedFlip{
  position:absolute !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  perspective:560px !important;
}
.nativeSpinnerSlot.boundedFlip.dragging{cursor:grabbing !important}
.nativeSpinnerReel.boundedFlip{
  position:absolute !important;
  inset:0 !important;
  overflow:visible !important;
  pointer-events:none !important;
  transform-style:preserve-3d !important;
}
.nativeSpinnerImg.boundedFlip{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  height:var(--symbol-height, 116%) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
  backface-visibility:hidden !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}


.nativeSpinnerOverlay.flatFlip{
  position:absolute !important;
  inset:0 !important;
  z-index:2850 !important;
  pointer-events:none !important;
}
.nativeSpinnerSlot.flatFlip{
  position:absolute !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  perspective:none !important;
  transform-style:flat !important;
}
.nativeSpinnerSlot.flatFlip.dragging{cursor:grabbing !important}
.nativeSpinnerReel.flatFlip{
  position:absolute !important;
  inset:0 !important;
  overflow:visible !important;
  pointer-events:none !important;
  transform-style:flat !important;
}
.nativeSpinnerImg.flatFlip{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:auto !important;
  height:var(--symbol-height, 116%) !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
  transform-origin:center center !important;
  backface-visibility:visible !important;
  filter:drop-shadow(0 8px 7px rgba(0,0,0,.58)) !important;
}


.piecesPanel{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}
.piecesBoard{
  position:absolute;
  left:7%;
  top:27%;
  width:86%;
  height:54%;
  border-radius:22px;
  background:rgba(237,219,176,.78);
  border:2px solid rgba(72,47,28,.48);
  box-shadow:0 18px 34px rgba(0,0,0,.35);
  pointer-events:none;
}
.piecesBoardTitle{
  position:absolute;
  left:5%;
  top:3%;
  font-family:CE_CantedComic, sans-serif;
  font-size:34px;
  color:#2b1b12;
}
.piecesBoardPrompt{
  position:absolute;
  left:5%;
  top:9%;
  width:90%;
  font-family:CE_CantedComic, sans-serif;
  font-size:26px;
  color:#3a2619;
}
.piecesTargets{
  position:absolute;
  inset:0;
}
.pieceTarget{
  position:absolute;
  border:2px dashed rgba(72,47,28,.45);
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:CE_Roboto, sans-serif;
  font-size:24px;
  color:rgba(72,47,28,.45);
  background:rgba(255,255,255,.16);
}
.piecesTrayLabel{
  position:absolute;
  left:5%;
  bottom:4%;
  font-family:CE_CantedComic, sans-serif;
  font-size:24px;
  color:rgba(43,27,18,.72);
}
.piecePostit{
  position:absolute;
  z-index:2470;
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
  border-radius:9px;
  background:#f8df6a;
  color:#25190e;
  border:1px solid rgba(77,54,15,.45);
  box-shadow:0 10px 16px rgba(0,0,0,.32);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:8px;
  box-sizing:border-box;
  font-family:CE_CantedComic, sans-serif;
  font-size:22px;
  line-height:1.05;
  transform:rotate(-1.5deg);
  user-select:none;
  -webkit-user-select:none;
}
.piecePostit:nth-of-type(2n){ transform:rotate(1.5deg); background:#f6e27d; }
.piecePostit.dragging{
  cursor:grabbing;
  z-index:2550;
  transform:rotate(0deg) scale(1.04);
  box-shadow:0 16px 22px rgba(0,0,0,.42);
}


.piecePostit.imagePiece{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  transform:rotate(0deg);
}
.piecePostit.imagePiece img{
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.38));
}
.pieceTarget{
  background:rgba(255,255,255,.08) !important;
}


.postitCircleLayer{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}
.postitCirclePiece{
  position:absolute;
  z-index:2470;
  pointer-events:auto;
  touch-action:none;
  cursor:grab;
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  user-select:none;
  -webkit-user-select:none;
}
.postitCirclePiece img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.38));
}
.postitCirclePiece.dragging{
  z-index:2550;
  cursor:grabbing;
  transform:scale(1.035);
}


.inputPanel.keyboardPanel{
  left:5.5%;
  right:5.5%;
  bottom:5.2%;
  padding:14px 14px 16px;
}
.inputPanel.keyboardPanel .prompt{
  margin:0 0 8px;
}
.inputDisplay{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(52px,1fr));
  gap:8px;
  margin:8px 0 10px;
}
.inputSlot{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  border:2px solid rgba(185,139,60,.9);
  background:#070504;
  color:#fff7bd;
  font:900 30px/1 CE_RobotoBold, CE_Roboto, monospace;
  letter-spacing:0;
}
.inputSlot.filled{
  background:#120b06;
}
.keypadRows{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:8px;
}
.keypadRow{
  display:grid;
  gap:8px;
}
.keypadRows.numeric .keypadRow{grid-template-columns:repeat(3,1fr)}
.keypadRows.numeric .keypadRow:last-child{grid-template-columns:1fr 1fr 1fr}
.keypadRows.numeric .keypadRow:last-child .keypadKey{grid-column:2}
.keypadRows.alpha .keypadRow{grid-template-columns:repeat(9,1fr)}
.keypadKey{
  border:0;
  border-radius:12px;
  background:#f2c55c;
  color:#211308;
  min-height:44px;
  font:900 18px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  cursor:pointer;
  box-shadow:0 3px 0 rgba(0,0,0,.35);
}
.keypadKey:active,.inputActions.compact button:active{transform:translateY(1px)}
.inputActions.compact{
  margin-top:10px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
}
.inputActions.compact button{
  min-height:40px;
}


.postitCircleLayer.showReceivers .postitCirclePiece{
  outline:2px dashed rgba(255,225,102,.78);
  border-radius:14px;
}
.postitCircleLayer.showReceivers .postitCirclePiece.accepted{
  outline-color:rgba(98,255,146,.95);
}
.receiverDebugOverlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
}
.receiverDebugOverlay.visible{
  opacity:1;
}
.receiverDebugZone{
  position:absolute;
  border:3px dashed rgba(255,92,92,.95);
  border-radius:50%;
  background:rgba(255,92,92,.12);
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.12);
}
.receiverDebugZone.active{
  border-color:rgba(98,255,146,.95);
  background:rgba(98,255,146,.14);
}
.receiverDebugZone span{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  background:rgba(10,10,10,.72);
  color:#fff4bf;
  border-radius:999px;
  padding:4px 8px;
  font:700 12px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  white-space:nowrap;
}
.pieceDebugBadge{
  position:absolute;
  right:4px;
  bottom:4px;
  display:none;
  border-radius:999px;
  padding:3px 7px;
  background:rgba(10,10,10,.78);
  color:#fff4bf;
  font:700 10px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  pointer-events:none;
}
.postitCircleLayer.showReceivers .pieceDebugBadge{
  display:block;
}


.inputPanel.keyboardPanel.compactKeyboard{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:visible !important;
  text-align:center;
}
.inputPanel.keyboardPanel.compactKeyboard h3,
.inputPanel.keyboardPanel.compactKeyboard .prompt,
.inputPanel.keyboardPanel.compactKeyboard .inputStatus{
  display:none !important;
}
.inputPanel.keyboardPanel.compactKeyboard .inputDisplay{
  margin:0 0 8px 0;
  gap:5px;
}
.inputPanel.keyboardPanel.compactKeyboard .inputSlot{
  min-height:34px;
  border-radius:8px;
  font-size:22px;
  border-width:2px;
  background:rgba(7,5,4,.88);
}
.inputPanel.keyboardPanel.compactKeyboard .keypadRows{
  gap:5px;
  margin-top:4px;
}
.inputPanel.keyboardPanel.compactKeyboard .keypadRow{
  gap:5px;
}
.inputPanel.keyboardPanel.compactKeyboard .keypadKey{
  min-height:32px;
  border-radius:8px;
  font-size:15px;
  box-shadow:0 2px 0 rgba(0,0,0,.35);
}
.inputPanel.keyboardPanel.compactKeyboard .inputActions.compact{
  gap:5px;
  margin-top:6px;
}
.inputPanel.keyboardPanel.compactKeyboard .inputActions.compact button{
  min-height:28px;
  font-size:11px;
  border-radius:7px;
}

/* stronger admin geometry overlay */
.receiverDebugZone{
  border-width:4px !important;
}
.receiverDebugOverlay.visible{
  opacity:1 !important;
}


.gridModulePanel{
  position:absolute;
  z-index:2450;
  display:grid;
  gap:14px;
  background:rgba(0,0,0,.25);
  border-radius:22px;
  pointer-events:auto;
  box-sizing:border-box;
}
.gridTile{
  position:relative;
  border:0;
  border-radius:18px;
  background:rgba(0,0,0,.18);
  overflow:hidden;
  padding:10px;
  cursor:pointer;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.08);
}
.gridTile img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.gridTile.selected{
  background:rgba(0,255,0,.42);
  box-shadow:inset 0 0 0 5px rgba(0,255,0,.75),0 0 20px rgba(0,255,0,.25);
}
.gridTile:active{
  transform:scale(.98);
}


.crosswordLayer{
  position:absolute;
  inset:0;
  z-index:2450;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
}
.crosswordCell{
  position:absolute;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:15px;
  font-family:CE_BricksBold, CE_RobotoBold, CE_Roboto, sans-serif;
  font-size:30px;
  line-height:1;
  box-sizing:border-box;
  text-transform:uppercase;
}
.crosswordCell.fixed{
  border:3px solid rgba(0,255,0,1);
  background:rgba(0,255,0,.25);
  color:#101010;
  pointer-events:none;
}
.crosswordCell.inputCell{
  border:3px solid rgba(36,36,36,.75);
  background:rgba(0,0,0,.25);
  color:#ffefb0;
  pointer-events:auto;
  cursor:pointer;
  box-shadow:0 3px 0 rgba(182,0,0,.9);
}
.crosswordCell.inputCell.filled{
  background:rgba(16,10,4,.72);
}
.crosswordCell.inputCell.active{
  outline:4px solid rgba(255,230,80,.9);
  z-index:2;
}
.crosswordHelp{
  position:absolute;
  left:7%;
  bottom:7.5%;
  width:62%;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.68);
  color:#fff4bf;
  font:700 12px/1.2 CE_RobotoBold, CE_Roboto, sans-serif;
  pointer-events:none;
}


.game.keyboardActive .contextButton{
  bottom:22.5% !important;
  width:15% !important;
  filter:none !important;
}
.game.keyboardActive .contextButton::after{
  content:none !important;
  display:none !important;
}
.sceneRoot.keyboardReserved .crosswordHelp{
  bottom:21.5%;
}
.gameKeyboard{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:18.75%;
  z-index:3000;
  box-sizing:border-box;
  padding:10px 12px 12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
  pointer-events:auto;
  background:linear-gradient(180deg, rgba(38,28,18,.94), rgba(11,8,5,.98));
  border-top:3px solid rgba(255,214,124,.62);
  box-shadow:0 -12px 32px rgba(0,0,0,.55);
}
.gameKeyboardRow{
  display:grid;
  grid-template-columns:repeat(var(--key-count), minmax(0,1fr));
  gap:7px;
  width:100%;
}
.gameKeyboardKey{
  min-width:0;
  height:43px;
  border:0;
  border-radius:10px;
  background:linear-gradient(180deg, #f8d67a, #d7a63f);
  color:#241508;
  font:900 16px/1 CE_RobotoBold, CE_Roboto, sans-serif;
  box-shadow:0 3px 0 rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.28);
  cursor:pointer;
  touch-action:manipulation;
}
.gameKeyboardKey:active{
  transform:translateY(2px);
  box-shadow:0 1px 0 rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.18);
}
.gameKeyboardKey.spaceKey{
  grid-column:span 7;
  font-size:13px;
}
.gameKeyboardKey.deleteKey{
  grid-column:span 3;
  font-size:20px;
}
.gameKeyboard.numeric .gameKeyboardKey.deleteKey{
  grid-column:span 5;
}
.gameKeyboard.alphanumeric{
  height:22.5%;
}
.game.keyboardActive .crosswordLayer{
  bottom:18.75%;
}


.game.keyboardActive .contextButton{
  bottom:18.2% !important;
}
.sceneRoot.keyboardReserved,
.game.keyboardActive .crosswordLayer{
  inset:0 !important;
  bottom:0 !important;
  height:100% !important;
}
.gameKeyboard{
  height:16.15% !important;
  padding:9px 10px 10px !important;
  gap:6px !important;
}
.gameKeyboardRow{
  gap:6px !important;
}
.gameKeyboardKey{
  height:40px !important;
  border-radius:9px !important;
  font-size:15px !important;
}
.gameKeyboardKey.spaceKey,
.gameKeyboardKey.deleteKey{
  grid-column:auto !important;
  font-size:12px !important;
}
.gameKeyboardKey.deleteKey{
  font-size:18px !important;
}
.gameKeyboard.alpha .gameKeyboardRow:nth-child(3){
  grid-template-columns:repeat(9, minmax(0,1fr)) !important;
}
\n\n
.gameKeyboard{
  --keyboard-gap:6px;
  --normal-key-width:calc((100% - (9 * var(--keyboard-gap))) / 10);
  height:17.2% !important;
  padding:9px 10px 15px !important;
  justify-content:flex-end !important;
  gap:var(--keyboard-gap) !important;
  background:linear-gradient(180deg, rgba(38,28,18,.70), rgba(11,8,5,.82)) !important;
  border-top:2px solid rgba(255,214,124,.52) !important;
  box-shadow:0 -10px 24px rgba(0,0,0,.42) !important;
  backdrop-filter:blur(2px);
}
.gameKeyboardRow{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:var(--keyboard-gap) !important;
  width:100%;
}
.gameKeyboardKey{
  flex:0 0 var(--normal-key-width);
  width:var(--normal-key-width);
  min-width:var(--normal-key-width);
  max-width:var(--normal-key-width);
  height:40px !important;
  padding:0 !important;
}
.gameKeyboardKey.spaceKey{
  flex-basis:calc((var(--normal-key-width) * 1.65) + (var(--keyboard-gap) * .65)) !important;
  width:calc((var(--normal-key-width) * 1.65) + (var(--keyboard-gap) * .65)) !important;
  min-width:calc((var(--normal-key-width) * 1.65) + (var(--keyboard-gap) * .65)) !important;
  max-width:calc((var(--normal-key-width) * 1.65) + (var(--keyboard-gap) * .65)) !important;
  font-size:20px !important;
  font-weight:700 !important;
}
.gameKeyboardKey.deleteKey{
  flex-basis:calc((var(--normal-key-width) * 1.35) + (var(--keyboard-gap) * .35)) !important;
  width:calc((var(--normal-key-width) * 1.35) + (var(--keyboard-gap) * .35)) !important;
  min-width:calc((var(--normal-key-width) * 1.35) + (var(--keyboard-gap) * .35)) !important;
  max-width:calc((var(--normal-key-width) * 1.35) + (var(--keyboard-gap) * .35)) !important;
  font-size:20px !important;
  font-weight:700 !important;
}
.gameKeyboard.alpha .gameKeyboardRow:nth-child(3){
  grid-template-columns:none !important;
}
.game.keyboardActive .contextButton{
  bottom:19.2% !important;
}


.gameKeyboard{
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:none !important;
  padding-left:10px !important;
  padding-right:10px !important;
}
.gameKeyboardRow{
  display:grid !important;
  width:100% !important;
  max-width:none !important;
  justify-content:stretch !important;
  grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
  gap:var(--keyboard-gap) !important;
}
.gameKeyboardKey{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  flex:none !important;
}
.gameKeyboard.alpha .gameKeyboardRow:nth-child(3){
  grid-template-columns:repeat(7, minmax(0, 1fr)) minmax(0, 1.65fr) minmax(0, 1.35fr) !important;
}
.gameKeyboardKey.spaceKey,
.gameKeyboardKey.deleteKey{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  flex:none !important;
}


.gameKeyboard{
  --keyboard-gap:8px !important;
  padding-left:12px !important;
  padding-right:12px !important;
}
.gameKeyboardRow{
  column-gap:var(--keyboard-gap) !important;
  row-gap:0 !important;
}
.gameKeyboardKey{
  box-sizing:border-box !important;
}


.gameKeyboard{
  height:16.15% !important;
  padding-top:7px !important;
  padding-bottom:10px !important;
  row-gap:5px !important;
  gap:5px !important;
  justify-content:flex-end !important;
}
.gameKeyboardRow{
  height:30px !important;
  min-height:30px !important;
  max-height:30px !important;
}
.gameKeyboardKey{
  height:30px !important;
  min-height:30px !important;
  max-height:30px !important;
  border-radius:8px !important;
  font-size:14px !important;
  line-height:1 !important;
}
.gameKeyboardKey.spaceKey,
.gameKeyboardKey.deleteKey{
  font-size:18px !important;
}
.game.keyboardActive .contextButton{
  bottom:17.25% !important;
}


.gameKeyboard.alpha{
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:18.4375% !important; /* 354 / 1920 */
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
  gap:0 !important;
  row-gap:0 !important;
  justify-content:stretch !important;
  align-content:stretch !important;
}
.gameKeyboard.alpha .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
  align-items:start !important;
}
.gameKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.alpha .gameKeyboardSpacer{
  box-sizing:border-box !important;
  width:94.444444% !important;   /* (108 - 1 - 5) / 108 */
  min-width:0 !important;
  max-width:none !important;
  height:94.915254% !important;  /* (118 - 1 - 5) / 118 */
  min-height:0 !important;
  max-height:none !important;
  margin-left:0.925926% !important; /* 1 / 108 */
  margin-top:0.847458% !important;  /* 1 / 118 */
  padding:0 !important;
}
.gameKeyboard.alpha .gameKeyboardKey{
  border-radius:999px !important; /* CSD R=100, capped by key height */
  font-size:clamp(13px, 3vw, 16px) !important;
  line-height:1 !important;
}
.gameKeyboard.alpha .gameKeyboardKey.deleteKey{
  width:94.444444% !important;
  font-size:clamp(17px, 4vw, 21px) !important;
}


.gameKeyboard.alpha{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.gameKeyboard.alpha .gameKeyboardKey{
  appearance:none !important;
  -webkit-appearance:none !important;
  background:rgba(0,0,0,.2509803922) !important;
  color:#fff !important;
  border:2px solid rgba(0,0,0,.3607843137) !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-weight:400 !important;
  font-size:clamp(12px, 2.95vw, 16px) !important;
  line-height:1 !important;
  text-shadow:none !important;
}
.gameKeyboard.alpha .gameKeyboardKey.deleteKey{
  font-size:clamp(14px, 3.2vw, 18px) !important;
  font-weight:400 !important;
}
.gameKeyboard.alpha .gameKeyboardKey:active{
  transform:scale(.8) !important;
  box-shadow:none !important;
}


.gameKeyboard.alpha{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:18.4375% !important;
  padding:0 !important;
  display:grid !important;
  grid-template-rows:repeat(3, minmax(0,1fr)) !important;
  gap:0 !important;
}
.gameKeyboard.alpha .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.gameKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.alpha .gameKeyboardSpacer{
  box-sizing:border-box !important;
  width:94.444444% !important;
  height:94.915254% !important;
  margin-left:0.925926% !important;
  margin-top:0.847458% !important;
}
.gameKeyboard.alpha .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}
.gameKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.alpha .gameKeyboardKey.deleteKey{
  appearance:none !important;
  -webkit-appearance:none !important;
  border-radius:999px !important;
  border:2px solid rgba(0,0,0,.3607843137) !important;
  background:rgba(0,0,0,.2509803922) !important;
  box-shadow:none !important;
  color:#fff !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-weight:400 !important;
  font-size:clamp(12px, 2.95vw, 16px) !important;
  line-height:1 !important;
  padding:0 !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:0 !important;
  max-height:none !important;
  transform:none;
}
.gameKeyboard.alpha .gameKeyboardKey:active{
  transform:scale(.8) !important;
}
.gameKeyboard.alpha .gameKeyboardKey.spaceKey,
.gameKeyboard.alpha .gameKeyboardKey.deleteKey{
  grid-column:auto !important;
}
.game.keyboardActive .contextButton{
  bottom:19.5% !important;
}


.crosswordCell.inputCell{
  box-shadow:none !important;
  color:#fff !important;
}
.crosswordCell.inputCell.filled{
  background:rgba(0,0,0,.25) !important;
}
.crosswordCell.fixed{
  color:#111 !important;
}


.gameKeyboard.alpha > .gameKeyboardRow,
.gameKeyboard.alpha > .gameKeyboardRow:nth-child(1),
.gameKeyboard.alpha > .gameKeyboardRow:nth-child(2),
.gameKeyboard.alpha > .gameKeyboardRow:nth-child(3){
  display:grid !important;
  grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
  grid-auto-columns:minmax(0, 1fr) !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey,
.gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey.spaceKey,
.gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey.deleteKey,
.gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardSpacer{
  grid-column:auto !important;
  flex:none !important;
  box-sizing:border-box !important;
  width:94.444444% !important;
  min-width:0 !important;
  max-width:94.444444% !important;
  height:94.915254% !important;
  min-height:0 !important;
  max-height:94.915254% !important;
  margin-left:0.925926% !important;
  margin-top:0.847458% !important;
  padding:0 !important;
  border-radius:999px !important;
  aspect-ratio:auto !important;
}
.gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey.deleteKey{
  font-size:clamp(12px, 2.95vw, 16px) !important;
  font-weight:400 !important;
}


.legacyCsdInputLayer{
  position:absolute;
  inset:0;
  z-index:2470;
  pointer-events:none;
}
.legacyCsdInputDisplay{
  position:absolute;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:rgba(0,0,0,.2509803922);
  border:0;
  color:#272727;
  font-family:CE_Roboto, Roboto, sans-serif;
  font-size:clamp(18px, 4.2vw, 34px);
  font-weight:400;
  line-height:1;
  text-align:center;
  pointer-events:none;
}
.gameKeyboard.numeric{
  position:absolute !important;
  left:0.9259259% !important;   /* 10 / 1080 */
  right:auto !important;
  bottom:1.1458333% !important; /* 1920 - (1780 + 118) = 22 */
  width:98.7962963% !important; /* 1067 / 1080 */
  height:6.1458333% !important; /* 118 / 1920 */
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  z-index:3000 !important;
}
.gameKeyboard.numeric .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.gameKeyboard.numeric .gameKeyboardKey{
  box-sizing:border-box !important;
  width:93.814433% !important;  /* (97 - 1 - 5) / 97 */
  height:94.915254% !important; /* (118 - 1 - 5) / 118 */
  margin-left:1.030928% !important;
  margin-top:0.847458% !important;
  padding:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background:rgba(0,0,0,.2509803922) !important;
  color:#fff !important;
  border:2px solid rgba(0,0,0,.3607843137) !important;
  border-radius:999px !important;
  box-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(12px, 2.95vw, 16px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.gameKeyboard.numeric .gameKeyboardKey.deleteKey{
  grid-column:auto !important;
  width:93.814433% !important;
  font-size:clamp(14px,3.2vw,18px) !important;
}
.gameKeyboard.numeric .gameKeyboardKey:active{
  transform:scale(.8) !important;
}
.game.keyboardActive .contextButton{
  bottom:8.1% !important;
}


.gameKeyboard.numeric{
  overflow:visible !important;
}
.gameKeyboard.numeric > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0,1fr)) !important;
  align-items:center !important;
  justify-items:center !important;
  width:100% !important;
  height:100% !important;
}
.gameKeyboard.numeric > .gameKeyboardRow > .gameKeyboardKey,
.gameKeyboard.numeric > .gameKeyboardRow > .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  width:93.814433% !important; /* (cell 97 - 1 - S5) / 97 */
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  touch-action:manipulation !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}

/* Entire visible key surface is interactive, not only the glyph area. */
.gameKeyboard .gameKeyboardKey{
  position:relative !important;
  z-index:1 !important;
  touch-action:manipulation !important;
  pointer-events:auto !important;
  -webkit-tap-highlight-color:transparent !important;
}
.gameKeyboard .gameKeyboardKey::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
}


.contextButton,
.game.keyboardActive .contextButton,
.game.keyboardAlpha .contextButton,
.game.keyboardNumeric .contextButton{
  right:2.7777778% !important;       /* (1080 - 869 - 181) / 1080 */
  width:16.7592593% !important;      /* 181 / 1080 */
  height:9.53125% !important;        /* 183 / 1920 */
  aspect-ratio:auto !important;
  padding:0 !important;
  background-size:100% 100% !important;
}
.game.keyboardAlpha .contextButton{
  top:70.9895833% !important;        /* (1566 - 183 - 20) / 1920 */
  bottom:auto !important;
}
.game.keyboardNumeric .contextButton{
  top:82.1354167% !important;        /* (1780 - 183 - 20) / 1920 */
  bottom:auto !important;
}

/* Exact type-1 numeric keyboard geometry from the global CSD and B4A construction.
   The numeric keys are intentionally smaller than type-2 alphabetic keys because
   11 equal columns share W=1067 instead of 10 columns sharing W=1080. */
.gameKeyboard.numeric{
  left:0.9259259% !important;        /* 10 / 1080 */
  right:auto !important;
  bottom:1.1458333% !important;      /* (1920 - 1780 - 118) / 1920 */
  width:98.7962963% !important;      /* 1067 / 1080 */
  height:6.1458333% !important;      /* 118 / 1920 */
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.gameKeyboard.numeric > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11,minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.gameKeyboard.numeric .gameKeyboardKey{
  box-sizing:border-box !important;
  width:93.814433% !important;        /* (1067/11 - 1 - 5) / (1067/11) */
  height:94.915254% !important;       /* (118 - 1 - 5) / 118 */
  margin-left:1.031866% !important;   /* 1 / (1067/11) */
  margin-top:0.847458% !important;    /* 1 / 118 */
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  border-radius:999px !important;
}


.game:not(.keyboardActive) .contextButton{
  top:auto !important;
  bottom:4.2% !important;
  right:3.5% !important;
  width:17% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  background-size:contain !important;
}
.phase2Badge{
  pointer-events:none;
}
.sideDevPanel .sideDevVersion{
  margin:0 0 8px;
  font-size:11px;
  opacity:.8;
}


.textLayer.speech{
  background-image:none !important;
  background-size:auto !important;
  text-shadow:none !important;
  overflow:visible !important;
  box-sizing:border-box !important;
  line-height:1.18 !important;
}
.textLayer.speech .textInner{
  position:relative !important;
  z-index:2 !important;
  text-align:center !important;
}
.textLayer.speech .speechPortrait{
  position:absolute !important;
  z-index:3 !important;
  object-fit:cover !important;
  border-radius:50% !important;
  border:calc(var(--phone-w) * 10 / 1080) solid #000 !important;
  pointer-events:none !important;
}


.textLayer.speech .speechPortrait{
  position:absolute !important;
  display:block !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  transform:none !important;
}


.nativeSpinnerOverlay.exactClick{
  position:absolute !important; inset:0 !important; z-index:2450 !important; pointer-events:none !important;
}
.nativeSpinnerSlot.exactClick{
  position:absolute !important; display:block !important; padding:0 !important; margin:0 !important;
  border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important;
  overflow:hidden !important; pointer-events:auto !important; touch-action:manipulation !important; cursor:pointer !important;
  appearance:none !important; -webkit-appearance:none !important;
}
.nativeSpinnerImg.exactClick{
  display:block !important; width:100% !important; height:100% !important; max-width:none !important; max-height:none !important;
  object-fit:contain !important; position:static !important; transform:none !important; filter:none !important; pointer-events:none !important;
  user-select:none !important; -webkit-user-drag:none !important;
}
.nativeSpinnerSlot.exactClick:active{ transform:scale(.98) !important; }


.legacyFrontLayer{
  pointer-events:none !important;
}
.sideDevPanel button:disabled{
  opacity:.38 !important;
  cursor:not-allowed !important;
  filter:grayscale(1) !important;
}


.sideDevPanel{
  display:flex !important;
  flex-direction:column !important;
  max-height:calc(100vh - 104px) !important;
  overflow:hidden !important;
  width:210px !important;
  box-sizing:border-box !important;
}
.sideDevFixed{flex:0 0 auto !important;}
.sideDevSceneList{
  flex:1 1 auto !important;
  min-height:110px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  scrollbar-gutter:stable !important;
  padding-right:4px !important;
}
.sideDevListLabel{
  margin:2px 0 7px !important;
  color:#ffe2a0 !important;
  font:700 11px/1.2 CE_Roboto, sans-serif !important;
}
.sideDevPanel .sideDevSceneItem{
  margin:3px 0 !important;
  padding:6px 7px !important;
  text-align:left !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  background:rgba(242,197,92,.82) !important;
  font-size:11px !important;
}
.sideDevPanel .sideDevSceneItem.current{
  background:#fff1b5 !important;
  box-shadow:inset 0 0 0 2px #ff9f1a !important;
}
.sideDevFooter{padding-top:1px !important;}
.sideDevSceneList::-webkit-scrollbar{width:9px;}
.sideDevSceneList::-webkit-scrollbar-thumb{background:rgba(255,214,124,.48);border-radius:999px;}


.gridModulePanel.testGrid{
  gap:0 !important;
  background:transparent !important;
  border-radius:0 !important;
}
.gridModulePanel.testGrid .gridTile.textChoice{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.2509803922) !important;
  color:#fff !important;
  box-shadow:none !important;
  font:400 clamp(18px,4.2vw,34px)/1.1 CE_Canted, CE_Roboto, sans-serif !important;
  margin:calc(var(--phone-w) * 25 / 1080) !important;
  padding:calc(var(--phone-w) * 20 / 1080) !important;
}
.gridModulePanel.testGrid .gridTile.textChoice.selected{
  background:rgba(0,255,0,.5019607843) !important;
  box-shadow:none !important;
}


.sceneRoot{ --legacy-p0-top:7.8125%; }

/* Visual-test question labels use %u positioning and must remain above the answer grid. */
.textLayer.speech.visualTestPrompt{
  z-index:2480 !important;
}
.gridModulePanel.testGrid{
  z-index:2450 !important;
}


.legacyTestSummary{
  position:absolute;
  left:10%;
  top:31%;
  width:80%;
  box-sizing:border-box;
  padding:3.2% 4.5%;
  background:#EBD7FF;
  border:calc(var(--phone-w) * 10 / 1080) solid #000;
  color:#572487;
  font:400 clamp(18px,3.7vw,31px)/1.25 CE_CantedComic, CE_Roboto, sans-serif;
  text-align:center;
  z-index:2450;
}
.legacyTestSummary strong{color:#007D00;font-weight:700;}


.legacyTestSummary{
  top:34% !important;
  padding:4.2% 5.5% !important;
  min-height:22%;
}
.legacyTestSummaryPortrait{
  position:absolute;
  left:5.5%;
  top:30.5%;
  width:12.037%;
  aspect-ratio:1/1;
  border-radius:50%;
  object-fit:cover;
  z-index:2460;
  pointer-events:none;
}
.legacyResultOverlay{
  position:absolute;
  inset:0;
  z-index:5000;
  background:rgba(0,0,0,.42);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:8%;
  box-sizing:border-box;
  cursor:pointer;
}
.legacyResultBox{
  width:82%;
  box-sizing:border-box;
  padding:5% 6%;
  background:#EBD7FF;
  border:calc(var(--phone-w) * 10 / 1080) solid #000;
  color:#572487;
  font:400 clamp(18px,3.7vw,31px)/1.25 CE_CantedComic, CE_Roboto, sans-serif;
  text-align:center;
  transform:rotate(1.3deg);
}
.legacyResultHint{
  margin-top:4%;
  color:#fff;
  font:700 clamp(12px,2.4vw,18px)/1.2 CE_Roboto, sans-serif;
  text-shadow:0 2px 4px #000;
}


.imageLayer[src*="juego.speculo.png"],
.imageLayer[data-src="juego.speculo.png"]{
  object-fit:contain !important;
}
.legacyTestSummary.exactCsdSummary{
  position:absolute !important;
  left:10% !important;              /* Texto.L.1=10%% */
  width:80% !important;             /* Texto.W.1=80%% */
  top:calc(var(--legacy-p0-top) + ((100% - var(--legacy-p0-top)) * .45)) !important; /* Texto.T.1=90%u */
  transform:translateY(-50%) !important;
  min-height:0 !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 45 / 1080) calc(var(--phone-w) * 35 / 1080) calc(var(--phone-w) * 45 / 1080) calc(var(--phone-w) * 45 / 1080) !important;
  background:#EBD7FF !important;
  border:calc(var(--phone-w) * 6 / 1080) solid #000 !important;
  color:#572487 !important;
  font:400 clamp(17px,3.45vw,29px)/1.22 CE_CantedComic, CE_Roboto, sans-serif !important;
  text-align:center !important;
  z-index:2450 !important;
}
.legacyTestSummary.exactCsdSummary strong{
  color:#007D00 !important;
  font-weight:700 !important;
}
.legacyTestSummaryPortrait.exactPos2{
  position:absolute !important;
  width:12.037037% !important;       /* 130 / 1080 */
  height:auto !important;
  aspect-ratio:1/1 !important;
  left:calc(10% - 6.018518% + 1.851852%) !important; /* pos2 anchor + Personaje.L=20px */
  top:calc(var(--legacy-p0-top) + ((100% - var(--legacy-p0-top)) * .45) - 6.018518% + 1.5625%) !important; /* anchor + T=30px */
  border-radius:50% !important;
  object-fit:cover !important;
  z-index:2460 !important;
  pointer-events:none !important;
}


.legacyResultOverlay.originalResultPanel{
  position:absolute;
  inset:0;
  z-index:5000;
  background:rgba(0,0,0,.5);
  display:block;
  padding:0;
  cursor:pointer;
  opacity:1;
  transition:opacity .25s linear;
}
.legacyResultOverlay.originalResultPanel.closing{opacity:0;}
.legacyResultSheet{
  position:absolute;
  left:5%;
  top:10%;
  width:90%;
  height:80%;
  box-sizing:border-box;
  background:url('../assets/fondo.resultado.png') center/100% 100% no-repeat;
  transform:translateY(125%);
  transition:transform .25s ease-out;
  pointer-events:auto;
}
.legacyResultSheet.visible{transform:translateY(0);}
.legacyResultSheet.closing{transform:translateY(125%);}
.legacyResultSheet .legacyResultBox{
  position:absolute;
  left:10%;
  top:10%;
  width:80%;
  height:auto;
  min-height:0;
  padding:0;
  box-sizing:border-box;
  background:transparent;
  border:0;
  color:#572487;
  font:400 clamp(17px,3.3vw,29px)/1.25 CE_JarOfHearts, CE_CantedComic, CE_Roboto, sans-serif;
  text-align:center;
  transform:rotate(1.3deg);
}
.legacyResultHint{display:none !important;}


.nativeSpinnerOverlay.calibrated.fullSlotImages{
  z-index:2450;
}
.nativeSpinnerSlot.calibrated.fullSlotImages{
  overflow:hidden !important;
}
.nativeSpinnerSlot.calibrated.fullSlotImages .nativeSpinnerReel.calibrated{
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:100% !important;
  overflow:hidden !important;
}
.nativeSpinnerSlot.calibrated.fullSlotImages .nativeSpinnerImg.calibrated{
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
  transform:translateY(0);
  will-change:transform, opacity;
  filter:none !important;
}
.nativeSpinnerSlot.calibrated.fullSlotImages .nativeSpinnerImg.incoming.calibrated{
  opacity:0;
}
.sideDevFontStatus{
  margin:4px 0 8px;
  font:700 11px/1.2 CE_Roboto, sans-serif;
  opacity:.8;
}
.sideDevFontStatus.warn{color:#ffd18a;opacity:1;}


.nativeSpinnerSlot.calibrated.fullSlotImages .nativeSpinnerImg.current.calibrated,
.nativeSpinnerSlot.calibrated.fullSlotImages .nativeSpinnerImg.incoming.calibrated{
  transform:translateY(0);
  will-change:transform, opacity;
}


.legacyCsdMultiInputLayer{position:absolute;inset:0;z-index:2620;pointer-events:none}
.legacyCsdMultiInputCell{position:absolute;pointer-events:auto;appearance:none;-webkit-appearance:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:rgba(0,0,0,.2509803922);border:0;color:#fff;padding:0;font-family:CE_Roboto,Roboto,sans-serif;font-weight:400;line-height:1;cursor:pointer}
.legacyCsdMultiInputCell.active{outline:3px solid rgba(255,225,55,.95);outline-offset:-2px}
.game.scene-12-02 .legacyCsdMultiInputCell{font-family:CE_Redonda,CE_Roboto,sans-serif;color:#272727;background:rgba(0,0,0,.2509803922)}


.game.scene-11-03 .legacyCsdMultiInputCell{
  font-family:CE_Roboto,Roboto,sans-serif !important;
  font-size:20px !important;
  color:#fff !important;
  background:rgba(0,0,0,.2509803922) !important;
  border:0 !important;
  box-shadow:none !important;
}
.game.scene-12-02 .legacyCsdMultiInputCell{
  font-family:CE_Redonda,CE_Roboto,sans-serif !important;
  font-size:25px !important;
  color:#272727 !important;
  background:rgba(0,0,0,.2509803922) !important;
  border:0 !important;
  box-shadow:none !important;
}
.game.scene-12-02 .textLayer{
  font-family:CE_Redonda,CE_Roboto,sans-serif;
}


.game.scene-12-02 .textLayer[id^="12.02-labeltext-"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  line-height:1 !important;
  text-align:center !important;
  font-family:CE_Redonda,CE_Roboto,sans-serif !important;
}
.game.scene-12-02 #12\.02-labeltext-1,
.game.scene-12-02 #12\.02-labeltext-8{
  font-size:25px !important;
}
.game.scene-12-02 #12\.02-labeltext-2,
.game.scene-12-02 #12\.02-labeltext-3,
.game.scene-12-02 #12\.02-labeltext-4,
.game.scene-12-02 #12\.02-labeltext-5,
.game.scene-12-02 #12\.02-labeltext-6,
.game.scene-12-02 #12\.02-labeltext-7{
  font-size:18px !important;
}
.game.scene-12-02 .textLayer[id^="12.02-labeltext-"] .textInner{
  width:100%;
  text-align:center;
}
.game.scene-12-02 .legacyCsdMultiInputCell{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1 !important;
  font-size:25px !important;
}
.game.scene-12-02 .layer[id^="12.02-label-"] img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
}


.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
  text-align:center !important;
  font-family:CE_Redonda, CE_Roboto, sans-serif !important;
}
.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"] .textInner{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.game.scene-12-02 .layer[data-layer-id^="12.02-label-"]{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  overflow:visible !important;
}
.game.scene-12-02 .layer[data-layer-id^="12.02-label-"] img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
}
.game.scene-12-02 .legacyCsdMultiInputCell{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  line-height:1 !important;
  font-family:CE_Redonda, CE_Roboto, sans-serif !important;
  padding:0 0 0 0 !important;
}


.game.noMenuScene .sceneRoot{inset:0 !important;}
.game.noMenuScene .contextButton{bottom:3.5% !important;}


.game.noMenuScene .sceneRoot,
.noMenuScene #sceneRoot{
  overflow:hidden;
}
[data-layer-id="13.05-rays"]{
  transform-origin:50% 50%;
}
[data-layer-id="13.05-rays"] img,
[data-layer-id="13.05-speculo"] img,
[data-layer-id="13.06-street"] img,
[data-layer-id="13.06-car"] img{
  width:100%;
  height:100%;
  object-fit:fill;
  display:block;
}
[data-layer-id="13.05-speculo"],
[data-layer-id="13.06-car"],
[data-layer-id="13.06-street"]{
  transform-origin:50% 50%;
}


[data-layer-id="13.06-street"] img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
}
[data-layer-id="13.06-car"] img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
}
[data-layer-id="13.06-street"]{
  transform:none !important;
  transform-origin:50% 50% !important;
}
[data-layer-id="13.06-car"]{
  transform-origin:50% 50% !important;
  will-change:transform, opacity;
}


.layer[data-layer-id^="14.01-panel"] img,
.layer[data-layer-id^="14.01-music"] img,
.layer[data-layer-id^="14.01-sound"] img{
  width:100%;
  height:100%;
  object-fit:fill;
  display:block;
}
.layer[data-layer-id="14.01-flash-panel"]{
  pointer-events:none !important;
}


.layer[data-layer-id^="15.01-music"] img,
.layer[data-layer-id^="15.01-sound"] img,
.layer[data-layer-id^="16.01-music"] img,
.layer[data-layer-id^="16.01-sound"] img{width:100%;height:100%;object-fit:fill;display:block;}
.layer[data-layer-id="15.01-call"] img{width:100%;height:100%;object-fit:fill;display:block;}
.layer[data-layer-id="16.01-credits"]{overflow:hidden;background:#000;}
.creditsViewport{overflow:hidden;}
.creditsContent{position:absolute;left:0;top:0;width:100%;will-change:transform;}
.creditsItem{position:absolute;}
.creditsItem img{width:100%;height:100%;object-fit:contain;display:block;}
.layer[data-layer-id="16.01-hand"],.layer[data-layer-id="16.01-pulse"]{pointer-events:none;will-change:transform,opacity;}
.layer[data-layer-id="17.01-polaroid"] img,
.layer[data-layer-id="17.01-crono"] img{width:100%;height:100%;object-fit:fill;display:block;}
.layer[data-layer-id="17.01-sello"] img{width:100%;height:100%;object-fit:contain;display:block;}
.surveyWheel{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:10px 14px;text-shadow:none!important;}
.surveyStar{pointer-events:auto!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.6));}
.surveyStar img{width:100%;height:auto!important;object-fit:contain!important;}
.layer[data-layer-id="18.01-continue"],.layer[data-layer-id="17.01-continue"]{display:flex;align-items:center;justify-content:center;background:#80122D;border-radius:10px;text-shadow:none!important;}
.layer[data-layer-id="17.01-skip"]{display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,0,0,.45);border-radius:10px;text-shadow:none!important;}


.game.noMenuScene #contextButton{ display:none; }
.photoMemoryMedia{
  position:absolute;
  overflow:hidden;
  background:#000;
  pointer-events:none;
}
.photoMemoryMedia video,
.photoMemoryMedia .photoMemoryCaptured{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.photoMemoryControl{
  position:absolute;
  border:0;
  padding:0;
  margin:0;
  background:transparent;
  pointer-events:auto;
  cursor:pointer;
  touch-action:manipulation;
}
.photoMemoryControl img{
  width:100%;
  height:100%;
  object-fit:fill;
  display:block;
  user-select:none;
  -webkit-user-drag:none;
}
.photoMemorySkip,
.photoMemoryContinue{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  user-select:none;
}
.photoMemoryContinue{
  transition:opacity .1s linear;
}
.photoMemoryAuthorization{
  pointer-events:auto !important;
}


.surveyWheel{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  overflow:visible !important;
}
.surveyWheel .textInner{
  width:100%;
  height:100%;
}
.surveySelect{
  width:100%;
  height:100%;
  min-height:2.2em;
  appearance:auto;
  -webkit-appearance:menulist;
  box-sizing:border-box;
  border:2px solid rgba(255,255,255,.85);
  border-radius:6px;
  background:#222;
  color:#fff;
  font:inherit;
  padding:0 .6em;
  text-align:left;
  pointer-events:auto;
}
.surveyContinue{
  transition:opacity .12s linear;
  pointer-events:auto !important;
}


.topBar{height:7.8125% !important;}
.topIcon{top:calc(100% * 10 / 150) !important;width:calc(100% * 115 / 1080) !important;border-radius:calc(var(--phone-w) * 7 / 1080) !important;}
.topIcon.map{left:calc(100% * 38 / 1080) !important;}
.topIcon.info{left:calc(100% * 188 / 1080) !important;}
.topIcon.music{left:calc(100% * 338 / 1080) !important;}
.topIcon.sound{left:calc(100% * 488 / 1080) !important;}
.topIcon.hint{left:calc(100% * 638 / 1080) !important;}
.topIcon.inventory{left:calc(100% * 788 / 1080) !important;}
.percent{right:calc(100% * 20 / 1080) !important;top:calc(100% * 10 / 150) !important;height:calc(100% * 115 / 150) !important;min-width:calc(100% * 255 / 1080) !important;}


.game .textLayer.instruction{font-family:CE_Jar, CE_Roboto, cursive !important;}
.game .textLayer.speech,.game .textLayer.narrative{font-family:CE_Canted, CE_Roboto, sans-serif !important;}


.textLayer.speech .speechPortrait{z-index:4 !important;}


.align-c{text-align:center !important;display:block;}
.align-l{text-align:left !important;display:block;}
.align-r{text-align:right !important;display:block;}

/* The original top menu shows the icon artwork only. Selected-state frames were
   a web-runtime invention and are deliberately removed. */
.game .topIcon,
.game .topIcon.active{
  background:transparent !important;
  outline:none !important;
  box-shadow:none !important;
}
.game .topIcon.active{filter:drop-shadow(0 2px 2px rgba(0,0,0,.72)) !important;}

/* Exact common layout declared by every XX.00.csd:
   PP=pnlContMapaJuego, L=7%, T=12%, W=86%, H=auto, Roboto. */
.game.destinationScene .textLayer[data-layer-id="destination-text"]{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  padding:0 !important;
  overflow:visible !important;
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.72) !important;
  font-family:CE_LocalRoboto,CE_Roboto,Arial,sans-serif !important;
}
.game.destinationScene .destinationCard{
  width:100%;
  padding:0 20px;
  text-align:center;
  line-height:1.12;
  font-family:CE_LocalRoboto,CE_Roboto,Arial,sans-serif;
}
.game.destinationScene .destinationTitle{
  margin:0 0 7px;
  color:#e2e2e2;
  font-size:22px;
  font-weight:700;
  letter-spacing:.1px;
}
.game.destinationScene .destinationPlace{
  color:#fff;
  font-size:29px;
  line-height:1.13;
  font-weight:700;
  font-style:italic;
}
.game.destinationScene .destinationAddress{
  margin-top:7px;
  color:#e2e2e2;
  font-size:19px;
  line-height:1.08;
  font-weight:400;
}

/* FuenteTiempo.Size=32 in !!config.csd. Keep the digital percentage clearly
   legible instead of the previous undersized 22px approximation. */
.game .percent{
  font-family:CE_LocalDigital,CE_Digital,monospace !important;
  font-size:30px !important;
  line-height:1 !important;
  letter-spacing:1px !important;
}


.game .topIcon.inventory{display:none !important;}
.game .percent{
  font-family:CE_LocalDigital,CE_Digital,monospace !important;
  font-size:calc(var(--phone-w) * 64 / 1080) !important;
  line-height:1 !important;
  letter-spacing:calc(var(--phone-w) * 1 / 1080) !important;
}


.game.scene-00-01{background:#000 !important;}


.topBar.legacyMenuBar{
  height:7.8125%; /* visible 150px before Panel0.Con begins */
  background:transparent url('../assets/fondo.menu.png') left top/100% auto no-repeat;
  border:0;
  box-shadow:none;
  overflow:hidden;
}
.topBar.legacyMenuBar .topIcon{
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  background:transparent !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
}
.topBar.legacyMenuBar .topIcon.active{
  background:transparent !important;
  outline:0 !important;
  filter:none !important;
}
.topBar.legacyMenuBar .topIcon.disabled{opacity:.35;filter:none !important;}
.topBar.legacyMenuBar .legacyPercent{
  right:auto;
  min-width:0;
  padding:0;
  color:#43cd00;
  background:transparent;
  border:0;
  border-radius:0;
  justify-content:center;
  font-family:CE_LocalDigital,CE_Digital,monospace !important;
  font-size:32px !important;
  font-weight:400;
  letter-spacing:0;
  text-shadow:0 0 4px rgba(67,205,0,.9),0 0 8px rgba(67,205,0,.55);
}
/* Prologue 00.01 is a full-screen, menu-less black CSD. */
.game.scene-00-01 .sceneRoot{
  background:#000 !important;
}
.game.scene-00-01 .textLayer{
  text-shadow:none;
}


.game.scene-00-00,
.game.scene-00-00 .sceneRoot{
  background:#000 !important;
}
.game.scene-00-00 .sceneRoot{
  inset:0 !important;
}
.game.scene-00-00 .destinationTitle{
  font-size:18px !important; /* [[size=9]] × original text multiplier */
  margin-bottom:7px !important;
}
.game.scene-00-00 .destinationPlace{
  font-size:24px !important; /* Texto.Size=12 × original text multiplier */
  line-height:1.15 !important;
}
.game.scene-00-00 .destinationAddress{
  font-size:16px !important; /* [[size=8]] × original text multiplier */
  margin-top:7px !important;
}
/* Menu-less scenes can still own their explicit CSD continue button.
   Only the photo module suppresses the generic arrow. */
.game.noMenuScene:not(.photoMemoryScene) #contextButton{
  display:block;
}
.game.scene-00-00 #contextButton.locked{
  opacity:.22;
  filter:grayscale(1) drop-shadow(0 4px 4px rgba(0,0,0,.62));
}
.game.scene-00-01 #contextButton{
  display:block;
}


.game.scene-00-02 .sceneRoot{
  background:#000 !important;
}
.game.scene-00-02 .topBar{display:none !important;}
.game.scene-00-02 [data-layer-id="text-1"],
.game.scene-00-02 [data-layer-id="text-2"]{
  text-shadow:none !important;
}
.game.scene-00-02 [data-layer-id="text-1"]{
  font-family:CE_NeoSansStdBoldItalic, "fuente.neosansstdbolditalic.ttf", sans-serif !important;
}
.game.scene-00-02 [data-layer-id="text-2"]{
  font-family:CE_NeoSansStdBoldItalic, "fuente.neosansstdbolditalic.ttf", sans-serif !important;
}
.game.scene-00-02 [data-layer-id="graphic-1"] img,
.game.scene-00-02 [data-layer-id="graphic-2"] img,
.game.scene-00-02 [data-layer-id="graphic-3"] img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}


.game.scene-00-02 [data-layer-id="text-1"],
.game.scene-00-02 [data-layer-id="text-2"]{
  font-family:CE_LocalNeoSansStdBoldItalic, "Neo Sans Std", sans-serif !important;
  color:#fff !important;
  text-shadow:none !important;
  -webkit-font-smoothing:antialiased;
  font-synthesis:none;
}
.game.scene-00-03,
.game.scene-00-04,
.game.scene-00-03 .sceneRoot,
.game.scene-00-04 .sceneRoot{
  background-image:url('../assets/fondo.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
}
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-3"]{
  font-family:CE_LocalCanted, cursive !important;
  color:#272727 !important;
  font-size:16px !important;
  line-height:1.1 !important;
  text-shadow:none !important;
  box-sizing:border-box !important;
}
.game.scene-00-03 [data-layer-id="graphic-1"] img,
.game.scene-00-04 [data-layer-id="graphic-1"] img{
  width:100% !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
}


.game.scene-00-02 [data-layer-id="text-1"],
.game.scene-00-02 [data-layer-id="text-1"] .textInner,
.game.scene-00-02 [data-layer-id="text-1"] .textInner *,
.game.scene-00-02 [data-layer-id="text-2"],
.game.scene-00-02 [data-layer-id="text-2"] .textInner,
.game.scene-00-02 [data-layer-id="text-2"] .textInner *{
  font-family:CE_LocalNeoSansStdBoldItalic, sans-serif !important;
  color:#fff !important;
  text-shadow:none !important;
  font-synthesis:none !important;
}
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-03 [data-layer-id="text-1"] .textInner,
.game.scene-00-03 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-3"],
.game.scene-00-04 [data-layer-id="text-3"] .textInner,
.game.scene-00-04 [data-layer-id="text-3"] .textInner *{
  font-family:CE_LocalCanted, cursive !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  color:#272727 !important;
}
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-3"]{
  background:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:3px 3px 1px rgba(0,0,0,.95) !important;
  padding:calc(var(--phone-w) * 30 / 1080) calc(var(--phone-w) * 30 / 1080) calc(var(--phone-w) * 30 / 1080) calc(var(--phone-w) * 35 / 1080) !important;
  line-height:1.08 !important;
  text-shadow:none !important;
}
.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-1"] .textInner,
.game.scene-00-04 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-2"],
.game.scene-00-04 [data-layer-id="text-2"] .textInner,
.game.scene-00-04 [data-layer-id="text-2"] .textInner *{
  font-family:CE_LocalOld, serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  color:#21170f !important;
  text-shadow:none !important;
  line-height:1.22 !important;
}
.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-2"]{
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
}


@font-face{
  font-family:CE_CantedStage85;
  src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),
      url('../assets/fuente.canted.otf?v=249') format('opentype');
  font-style:normal;
  font-weight:400;
  font-display:block;
}
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-03 [data-layer-id="text-1"] .textInner,
.game.scene-00-03 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-3"],
.game.scene-00-04 [data-layer-id="text-3"] .textInner,
.game.scene-00-04 [data-layer-id="text-3"] .textInner *{
  font-family:CE_AppCanted, CE_CantedStage85, CE_LocalCanted, cursive !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  letter-spacing:0 !important;
}
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-3"]{
  color:#17110d !important;
  background:#fff !important;
  border:0 !important;
  box-shadow:calc(var(--phone-w) * 6 / 1080) calc(var(--phone-w) * 7 / 1080) 0 rgba(0,0,0,.94) !important;
  padding:calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 35 / 1080) !important;
  line-height:1.08 !important;
}
/* B4A paddings are logical 1080-wide coordinates, not literal browser pixels. */
.game.scene-00-04 [data-layer-id="text-1"]{
  padding:calc(var(--phone-w) * 45 / 1080)
          calc(var(--phone-w) * 60 / 1080)
          calc(var(--phone-w) * 35 / 1080)
          calc(var(--phone-w) * 80 / 1080) !important;
}
.game.scene-00-04 [data-layer-id="text-2"]{
  padding:calc(var(--phone-w) * 45 / 1080)
          calc(var(--phone-w) * 45 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 50 / 1080) !important;
}
.game.scene-00-04 [data-layer-id="text-1"] .textInner,
.game.scene-00-04 [data-layer-id="text-2"] .textInner{
  width:100% !important;
  max-width:none !important;
  overflow:visible !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  hyphens:none !important;
}


.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-03 [data-layer-id="text-1"] .textInner,
.game.scene-00-03 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-3"],
.game.scene-00-04 [data-layer-id="text-3"] .textInner,
.game.scene-00-04 [data-layer-id="text-3"] .textInner *{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
  font-synthesis:none !important;
}
/* CSD Padding is Android order: left, top, right, bottom. */
.game.scene-00-04 [data-layer-id="text-1"]{
  padding:calc(var(--phone-w) * 60 / 1080)
          calc(var(--phone-w) * 35 / 1080)
          calc(var(--phone-w) * 80 / 1080)
          calc(var(--phone-w) * 45 / 1080) !important;
}
.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-2"]{
  line-height:1.04 !important;
}
.game.scene-00-04 [data-layer-id="text-1"] .textInner,
.game.scene-00-04 [data-layer-id="text-2"] .textInner{
  display:block !important;
  width:auto !important;
  max-width:100% !important;
  overflow:visible !important;
}
.game .legacyControl{
  touch-action:manipulation;
  user-select:none;
  -webkit-user-select:none;
}


@font-face{
  font-family:CE_CantedStage87;
  src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),
      url('../assets/fuente.canted.otf?v=249') format('opentype');
  font-style:normal;
  font-weight:400;
  font-display:block;
}
.game .textLayer.narrative,
.game .textLayer.narrative .textInner,
.game .textLayer.narrative .textInner *,
.game .textLayer.speech,
.game .textLayer.speech .textInner,
.game .textLayer.speech .textInner *{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
  font-synthesis:none !important;
  font-style:normal;
}
.game.scene-00-05,
.game.scene-00-05 .sceneRoot{
  background-image:url('../assets/fondo.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
}
.game.scene-00-05 [data-layer-id="text-1"]{
  background:#fff !important;
  color:#272727 !important;
  border:0 !important;
  box-shadow:calc(var(--phone-w) * 6 / 1080) calc(var(--phone-w) * 7 / 1080) 0 rgba(0,0,0,.82) !important;
  padding:calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 35 / 1080) !important;
  line-height:1.12 !important;
  text-shadow:none !important;
}
.game.scene-00-05 [data-layer-id="text-1"],
.game.scene-00-05 [data-layer-id="text-1"] .textInner,
.game.scene-00-05 [data-layer-id="text-1"] .textInner *,
.game.scene-00-05 [data-layer-id="text-2"],
.game.scene-00-05 [data-layer-id="text-2"] .textInner,
.game.scene-00-05 [data-layer-id="text-2"] .textInner *{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}
.game.scene-00-05 [data-layer-id="text-2"]{
  line-height:1.08 !important;
}


.game .textLayer.narrative:not(.paper),
.game .textLayer.narrative:not(.paper) .textInner,
.game .textLayer.narrative:not(.paper) .textInner *,
.game .textLayer.speech,
.game .textLayer.speech .textInner,
.game .textLayer.speech .textInner *{
  font-family:CE_CantedComic, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
}
.game .textLayer.paper,
.game .textLayer.paper .textInner,
.game .textLayer.paper .textInner *,
.game [data-typography-role="newspaper-old"],
.game [data-typography-role="newspaper-old"] .textInner,
.game [data-typography-role="newspaper-old"] .textInner *{
  font-family:CE_LocalOld, CE_Old, serif !important;
  font-style:normal !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}
/* Exact 00.04 newspaper layout: original CSD geometry and padding, with the
   old newspaper face protected from the transversal comic rule. */
.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-2"]{
  font-family:CE_LocalOld, CE_Old, serif !important;
  font-size:calc(var(--phone-w) * 24 / 1080) !important;
  line-height:1.12 !important;
  overflow:visible !important;
  text-shadow:none !important;
  background-size:100% 100% !important;
}
/* Canted Comic was the visual family used by the web runtime before the
   stage-75 font regression. These captions/dialogues must not inherit Old. */
.game.scene-00-03 [data-layer-id="text-1"],
.game.scene-00-03 [data-layer-id="text-1"] .textInner,
.game.scene-00-03 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-3"],
.game.scene-00-04 [data-layer-id="text-3"] .textInner,
.game.scene-00-04 [data-layer-id="text-3"] .textInner *,
.game.scene-00-05 [data-layer-id="text-1"],
.game.scene-00-05 [data-layer-id="text-1"] .textInner,
.game.scene-00-05 [data-layer-id="text-1"] .textInner *,
.game.scene-00-05 [data-layer-id="text-2"],
.game.scene-00-05 [data-layer-id="text-2"] .textInner,
.game.scene-00-05 [data-layer-id="text-2"] .textInner *{
  font-family:CE_CantedComic, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
}
.legacyPanelTransition{
  position:absolute;
  inset:0;
  z-index:10000;
  opacity:0;
  pointer-events:none;
  transition-property:opacity;
  transition-timing-function:linear;
}
.legacyPanelTransition.visible{opacity:1;}


.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-2"],
.game.scene-00-04 [data-layer-id="text-1"] .textInner,
.game.scene-00-04 [data-layer-id="text-2"] .textInner,
.game.scene-00-04 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-2"] .textInner *{
  font-family:CE_LocalOld, CE_Old, serif !important;
  font-size:17.4px !important; /* original B4A Size=12 × runtime text multiplier 1.45 */
  line-height:1.16 !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  text-shadow:none !important;
}
.game.scene-00-04 [data-layer-id="text-1"]{
  padding:calc(var(--phone-w) * 60 / 1080)
          calc(var(--phone-w) * 35 / 1080)
          calc(var(--phone-w) * 80 / 1080)
          calc(var(--phone-w) * 45 / 1080) !important;
}
.game.scene-00-04 [data-layer-id="text-2"]{
  padding:calc(var(--phone-w) * 45 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 50 / 1080)
          calc(var(--phone-w) * 45 / 1080) !important;
}


.game.scene-00-06,
.game.scene-00-06 .sceneRoot{
  background-image:url('../assets/fondo.jpg') !important;
  background-size:cover !important;
  background-position:center !important;
}
.game.scene-00-06 [data-layer-id="text-1"],
.game.scene-00-06 [data-layer-id="text-1"] .textInner,
.game.scene-00-06 [data-layer-id="text-1"] .textInner *{
  font-family:CE_CantedComic, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
  font-size:15.95px !important; /* !!config Fuente.Size=11 × B4A text multiplier 1.45 */
  line-height:1.08 !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}
.game.scene-00-06 [data-layer-id="text-1"]{
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 35 / 1080)
          calc(var(--phone-w) * 30 / 1080) !important;
}
.game.scene-00-06 [data-layer-id="graphic-1"]{
  transform-origin:50% 50% !important;
}


.game.scene-00-06 .speechPortrait,
.game.scene-00-07 .speechPortrait{
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.game.scene-00-07 [data-layer-id="text-1"],
.game.scene-00-07 [data-layer-id="text-1"] .textInner,
.game.scene-00-07 [data-layer-id="text-1"] .textInner *,
.game.scene-00-07 [data-layer-id="text-2"],
.game.scene-00-07 [data-layer-id="text-2"] .textInner,
.game.scene-00-07 [data-layer-id="text-2"] .textInner *{
  font-family:CE_CantedComic, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
  font-size:15.95px !important;
  line-height:1.08 !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}
.game.scene-00-07 [data-layer-id="text-1"],
.game.scene-00-07 [data-layer-id="text-2"]{
  padding:calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 30 / 1080)
          calc(var(--phone-w) * 35 / 1080)
          calc(var(--phone-w) * 30 / 1080) !important;
}
.game.scene-00-08 [data-layer-id="text-1"],
.game.scene-00-08 [data-layer-id="text-1"] .textInner,
.game.scene-00-08 [data-layer-id="text-1"] .textInner *,
.game.scene-00-08 [data-layer-id="text-2"],
.game.scene-00-08 [data-layer-id="text-2"] .textInner,
.game.scene-00-08 [data-layer-id="text-2"] .textInner *{
  font-family:CE_CantedComic, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, cursive !important;
  font-size:14.5px !important;
  line-height:1.08 !important;
  font-weight:400 !important;
  font-synthesis:none !important;
}
.game.scene-00-08 [data-layer-id="text-1"]{
  padding:calc(var(--phone-w) * 55 / 1080)
          calc(var(--phone-w) * 125 / 1080)
          calc(var(--phone-w) * 140 / 1080)
          calc(var(--phone-w) * 125 / 1080) !important;
  background-size:100% 100% !important;
}
.game.scene-00-08 [data-layer-id="text-2"]{
  padding:calc(var(--phone-w) * 40 / 1080)
          calc(var(--phone-w) * 80 / 1080)
          calc(var(--phone-w) * 60 / 1080)
          calc(var(--phone-w) * 80 / 1080) !important;
  background-size:100% 100% !important;
}
.game.scene-00-08 [data-layer-id="panel-1"]{
  pointer-events:none !important;
}
.game.scene-00-08 [data-layer-id="text-1"],
.game.scene-00-08 [data-layer-id="text-1"] .textInner,
.game.scene-00-08 [data-layer-id="text-1"] .textInner *,
.game.scene-00-08 [data-layer-id="text-2"],
.game.scene-00-08 [data-layer-id="text-2"] .textInner,
.game.scene-00-08 [data-layer-id="text-2"] .textInner *{
  color:#572487 !important;
}


.game .textLayer.speech .speechPortrait{
  display:block !important;
  overflow:hidden !important;
  background:none !important;
}
.game .textLayer.speech .speechPortraitImage{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  border-radius:50% !important;
  pointer-events:none !important;
  background:none !important;
}


#contextButton.timingLocked{
  transition:opacity 250ms linear !important;
  cursor:default !important;
}


.game .textLayer.speech .speechPortrait{
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  flex:none !important;
  transform:none !important;
}
.game .textLayer.speech .speechPortraitImage{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:50% !important;
}


.game.scene-00-09 .topBar.tutorialLegacyTopBar{
  z-index:1900 !important;
  height:calc(var(--phone-h) * 150 / 1920) !important;
  overflow:visible !important;
}
.game .topBar.tutorialLegacyTopBar .topIcon{
  top:calc(100% * 10 / 150) !important;
  width:calc(var(--phone-w) * 115 / 1080) !important;
  height:calc(var(--phone-w) * 115 / 1080) !important;
  min-width:0 !important;
  min-height:0 !important;
  opacity:1;
  z-index:2;
}
.game .topBar.tutorialLegacyTopBar .topIcon.map{left:calc(var(--phone-w) * 38 / 1080) !important;}
.game .topBar.tutorialLegacyTopBar .topIcon.info{left:calc(var(--phone-w) * 188 / 1080) !important;}
.game .topBar.tutorialLegacyTopBar .topIcon.music{left:calc(var(--phone-w) * 338 / 1080) !important;}
.game .topBar.tutorialLegacyTopBar .topIcon.sound{left:calc(var(--phone-w) * 488 / 1080) !important;}
.game .topBar.tutorialLegacyTopBar .topIcon.hint{left:calc(var(--phone-w) * 638 / 1080) !important;}
.game .topBar.tutorialLegacyTopBar .topIcon img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
}
.game.scene-00-09 [data-layer-id="graphic-1"]{
  z-index:2100 !important;
  pointer-events:none !important;
}
.game.scene-00-09 [data-layer-id="graphic-2"]{
  z-index:2500 !important;
  pointer-events:none !important;
  overflow:visible !important;
}
.game.scene-00-09 [data-layer-id="graphic-3"],
.game.scene-00-09 [data-layer-id="text-2"],
.game.scene-00-09 [data-layer-id="text-3"]{
  z-index:2400 !important;
}
.game.scene-00-09 [data-layer-id="text-1"]{
  z-index:2600 !important;
}
.game.scene-00-09 .textLayer{
  line-height:1.18 !important;
}


.routeMapOverlay{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:#111 !important;
  overflow:hidden !important;
}
.routeMapFrame{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border:0 !important;
  background:#ddd !important;
}
.routeMapLoading{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  z-index:2 !important;
  padding:12px 18px !important;
  border-radius:12px !important;
  background:rgba(0,0,0,.78) !important;
  color:#fff !important;
  font:700 14px/1.2 CE_LocalRoboto,sans-serif !important;
  pointer-events:none !important;
}
.routeMapClose{
  position:absolute !important;
  right:18px !important;
  top:18px !important;
  z-index:6 !important;
  width:52px !important;
  height:52px !important;
  border:0 !important;
  border-radius:50% !important;
  background:rgba(35,22,13,.9) !important;
  color:#ffd22e !important;
  font:700 34px/1 sans-serif !important;
}
.tutorialMapCurtain{
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  background-position:center !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  opacity:.72 !important;
  pointer-events:auto !important;
}
.tutorialMapTopContent{
  position:absolute !important;
  inset:0 !important;
  z-index:4 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}
.tutorialMapGraphic,
.tutorialMapText{
  position:absolute !important;
  box-sizing:border-box !important;
  pointer-events:none !important;
}
.tutorialMapGraphic{
  object-fit:contain !important;
}
.tutorialMapText{
  color:#fff !important;
  text-align:center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
}
.game.scene-00-09 #contextButton{
  display:none !important;
}


.tutorialRouteMap .tutorialMapCurtain{
  /* Files/00.09.csd: Panel.Top=tutorial.top.abajo.png and
     Panel.Transparencia=0.6. The PNG itself contains the transparent gradients. */
  opacity:.6 !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-color:transparent !important;
  mix-blend-mode:normal !important;
}

/* The tutorial menu uses only fondo.menu.png plus transparent PNG icons.
   No web button tile, active fill or dark backing is allowed. */
.game .topBar.tutorialLegacyTopBar .topIcon,
.game .topBar.tutorialLegacyTopBar .topIcon.active{
  background:transparent !important;
  background-color:transparent !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
}

/* 00.10 begins by highlighting the information icon. */
.game.scene-00-10 .topBar.tutorialLegacyTopBar{z-index:1900 !important;overflow:visible !important;}
.game.scene-00-10 [data-layer-id="graphic-1"]{z-index:2100 !important;pointer-events:none !important;}
.game.scene-00-10 [data-layer-id="graphic-2"]{z-index:2450 !important;pointer-events:none !important;}
.game.scene-00-10 [data-layer-id="graphic-3"]{z-index:2500 !important;pointer-events:none !important;overflow:visible !important;}

/* After tapping INFO, B4A hides pnlTapaTutorial and brings pnlInstrucciones
   to the front with ARGB(220,0,0,0). */
.tutorialInstructionsBackdrop{
  position:absolute !important;
  inset:0 !important;
  z-index:2200 !important;
  background:rgba(0,0,0,.862745) !important;
  pointer-events:none !important;
}
.game.scene-00-10 [data-layer-id="text-1"]{
  z-index:2500 !important;
  line-height:1.18 !important;
}
.game.scene-00-10 [data-layer-id="graphic-4"]{
  z-index:2400 !important;
  overflow:hidden !important;
}
.game.scene-00-10 [data-layer-id="graphic-4"] img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
.game.scene-00-10 .coinFlipHotspot{
  z-index:2600 !important;
}


.game.scene-00-11 .topBar.tutorialLegacyTopBar{z-index:1900 !important;overflow:visible !important;}
.game.scene-00-11 [data-layer-id="graphic-1"]{z-index:2100 !important;pointer-events:none !important;}
.game.scene-00-11 [data-layer-id="graphic-2"]{z-index:2500 !important;pointer-events:none !important;overflow:visible !important;}
.game.scene-00-11 [data-layer-id="text-1"]{z-index:2600 !important;line-height:1.18 !important;}

.tutorialIntro00_10{
  position:absolute !important;
  left:10% !important;
  top:30% !important;
  width:80% !important;
  z-index:2600 !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalJar, CE_Jar, cursive !important;
  font-size:36px !important;
  line-height:1.18 !important;
  transform:rotate(-4deg) !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  pointer-events:none !important;
}


@keyframes tutorialCsdTopHandScale {
  0%,100% { transform:scale(1); }
  50% { transform:scale(.9); }
}
.game.scene-00-09 [data-layer-id="graphic-2"],
.game.scene-00-10 [data-layer-id="graphic-3"],
.game.scene-00-11 [data-layer-id="graphic-2"]{
  transform-origin:50% 50% !important;
  animation:tutorialCsdTopHandScale 1000ms ease-in-out infinite !important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.45)) !important;
}
.game.scene-00-10 [data-layer-id="graphic-1"],
.game.scene-00-11 [data-layer-id="graphic-1"]{
  opacity:.8 !important;
}
.tutorialInstructionDemo{
  position:absolute !important;
  inset:0 !important;
  z-index:2650 !important;
  pointer-events:none !important;
  overflow:visible !important;
}
.tutorialInstructionDemo img{
  position:absolute !important;
  display:block !important;
  object-fit:contain !important;
  pointer-events:none !important;
  transform-origin:50% 50% !important;
}
.tutorialInstructionObject{
  z-index:1 !important;
  animation:tutorialInstructionObjectFlip 3200ms linear infinite !important;
}
.tutorialInstructionPulse{
  z-index:2 !important;
  opacity:0;
  animation:tutorialInstructionPulseFlip 3200ms linear infinite !important;
}
.tutorialInstructionHand{
  z-index:3 !important;
  animation:tutorialInstructionHandFlip 3200ms linear infinite !important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.5)) !important;
}
@keyframes tutorialInstructionHandFlip{
  0%,15.625% { transform:translateX(0) scale(1); opacity:1; }
  21.875% { transform:translateX(0) scale(.7); opacity:1; }
  39.0625% { transform:translateX(200px) scale(.7); opacity:1; }
  37.5%,53.125% { transform:translateX(200px) scale(1); opacity:1; }
  60.9375% { transform:translateX(200px) scale(1); opacity:0; }
  65.625% { transform:translateX(0) scale(1); opacity:0; }
  84.375% { transform:translateX(0) scale(1); opacity:0; }
  92.1875%,100% { transform:translateX(0) scale(1); opacity:1; }
}
@keyframes tutorialInstructionPulseFlip{
  0%,18.7% { transform:scale(0); opacity:0; }
  18.75% { transform:scale(0); opacity:1; }
  26.5625% { transform:scale(.5); opacity:0; }
  34.375%,100% { transform:scale(1); opacity:0; }
}
@keyframes tutorialInstructionObjectFlip{
  0%,46.875% { transform:rotateY(0deg); opacity:1; }
  53.125% { transform:rotateY(180deg); opacity:1; }
  84.375% { transform:rotateY(180deg); opacity:0; }
  92.1875%,100% { transform:rotateY(0deg); opacity:1; }
}


.game.scene-00-09 [data-layer-id="graphic-2"],
.game.scene-00-10 [data-layer-id="graphic-3"],
.game.scene-00-11 [data-layer-id="graphic-2"],
.game.scene-00-12 [data-layer-id="graphic-2"],
.game.scene-00-13 [data-layer-id="graphic-2"],
.game.scene-00-14 [data-layer-id="graphic-2"]{
  animation:none !important;
  filter:none !important;
}
.instructionSimulation{
  position:absolute !important;
  inset:0 !important;
  z-index:2650 !important;
  pointer-events:none !important;
  overflow:hidden !important;
}
.instructionSimulation img{
  position:absolute !important;
  display:block !important;
  object-fit:contain !important;
  pointer-events:none !important;
  transform-origin:50% 50% !important;
  backface-visibility:visible !important;
}
.instructionSimulationPulse{z-index:2 !important;opacity:0;}


.instructionSimulation img{
  object-fit:contain !important;
  aspect-ratio:1 / 1 !important;
  max-width:none !important;
  max-height:none !important;
}
.instructionSimulationObject{z-index:1 !important;}
.instructionSimulationPulse{z-index:2 !important;}


.game.scene-00-09 [data-layer-id="graphic-2"],
.game.scene-00-10 [data-layer-id="graphic-3"],
.game.scene-00-11 [data-layer-id="graphic-2"],
.game.scene-00-12 [data-layer-id="graphic-2"],
.game.scene-00-13 [data-layer-id="graphic-2"],
.game.scene-00-14 [data-layer-id="graphic-2"]{
  animation:revert !important;
  filter:none !important;
  transform-origin:50% 50% !important;
}
.instructionSimulation{
  overflow:hidden !important;
}
.instructionSimulationObject,
.instructionSimulationPulse,
.instructionSimulationHand{
  box-sizing:border-box !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  object-position:center center !important;
}
.instructionSimulationObject{
  width:calc(var(--phone-w) * 100 / 1080) !important;
  height:calc(var(--phone-w) * 100 / 1080) !important;
  left:calc(var(--phone-w) * 425 / 1080) !important;
  top:calc(var(--phone-h) * 860 / 1920) !important;
  z-index:1 !important;
}
.instructionSimulationPulse{
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  left:calc(var(--phone-w) * 380 / 1080) !important;
  top:calc(var(--phone-h) * 800 / 1920) !important;
  z-index:2 !important;
}
.instructionSimulationHand{
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  left:calc(var(--phone-w) * 440 / 1080) !important;
  top:calc(var(--phone-h) * 860 / 1920) !important;
  z-index:3 !important;
}


.game.scene-00-09 [data-layer-id="graphic-2"],
.game.scene-00-10 [data-layer-id="graphic-3"],
.game.scene-00-11 [data-layer-id="graphic-2"],
.game.scene-00-12 [data-layer-id="graphic-2"],
.game.scene-00-13 [data-layer-id="graphic-2"],
.game.scene-00-14 [data-layer-id="graphic-2"]{
  animation:none !important;
  filter:none !important;
  transform-origin:50% 50% !important;
}
.instructionSimulationPulse{
  z-index:2 !important;
  transform-origin:50% 50% !important;
  mix-blend-mode:screen !important;
}
.instructionSimulationHand{
  z-index:3 !important;
}
.game.scene-00-11 [data-layer-id="graphic-1"]{
  opacity:.8 !important;
}
.game.scene-00-11 [data-layer-id="graphic-2"]{
  left:calc(var(--phone-w) * 404 / 1080) !important;
  top:calc(var(--phone-h) * 70 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:2500 !important;
}
.game.scene-00-11 [data-layer-id="text-1"]{
  left:10% !important;
  top:30% !important;
  width:80% !important;
  z-index:2600 !important;
  font-family:CE_LocalJar,CE_Jar,cursive !important;
  line-height:1.18 !important;
  text-align:center !important;
}
.game.scene-00-11 #contextButton{
  display:none !important;
}


.tutorialCompletionShade00_10{
  position:absolute !important;
  inset:0 !important;
  z-index:2475 !important;
  background:rgba(0,0,0,.58) !important;
  pointer-events:none !important;
}
.game.scene-00-10 #contextButton{
  z-index:3000 !important;
}

.game.scene-00-12 .topBar.tutorialLegacyTopBar{
  z-index:1900 !important;
  overflow:visible !important;
}
.game.scene-00-12 [data-layer-id="graphic-1"]{
  z-index:2100 !important;
  opacity:.8 !important;
  pointer-events:none !important;
}
.game.scene-00-12 [data-layer-id="graphic-2"]{
  left:calc(var(--phone-w) * 552 / 1080) !important;
  top:calc(var(--phone-h) * 70 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:2500 !important;
  pointer-events:none !important;
  overflow:visible !important;
}
.game.scene-00-12 [data-layer-id="text-1"]{
  left:10% !important;
  top:30% !important;
  width:80% !important;
  z-index:2600 !important;
  font-family:CE_LocalJar,CE_Jar,cursive !important;
  line-height:1.18 !important;
  text-align:center !important;
}
.game.scene-00-12 #contextButton{
  display:none !important;
}


.tutorialCompletionShade00_10{
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% 100% !important;
  opacity:.72 !important;
}

/* 00.13/00.14 CSD positions are authored in the 540-wide B4A coordinate
   space for the tutorial hand. Their imported pt values were doubled twice,
   putting the hands outside the 1080 logical canvas. Restore the intended
   anchors next to the hint and time areas. */
.game.scene-00-13 [data-layer-id="graphic-2"]{
  left:calc(var(--phone-w) * 702 / 1080) !important;
  top:calc(var(--phone-h) * 70 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:2500 !important;
}
.game.scene-00-14 [data-layer-id="00.14-hand"]{
  left:calc(var(--phone-w) * 893 / 1080) !important;
  top:calc(var(--phone-h) * 70 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:2500 !important;
}
.game.scene-00-13 [data-layer-id="graphic-1"],
.game.scene-00-14 [data-layer-id="00.14-bg"]{opacity:.8 !important;}
.game.scene-00-13 [data-layer-id="text-1"],
.game.scene-00-13 [data-layer-id="text-2"],
.game.scene-00-14 [data-layer-id="00.14-text-1"],
.game.scene-00-14 [data-layer-id="00.14-text-2"]{
  font-family:CE_LocalJar,CE_Jar,cursive !important;
  line-height:1.18 !important;
  text-align:center !important;
  z-index:2600 !important;
}
.tutorialTapAdvance00_14{
  position:absolute !important;
  inset:0 !important;
  z-index:2800 !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  cursor:pointer !important;
}
.game.scene-00-14 #contextButton{display:none !important;}
.game.scene-00-15 [data-layer-id="00.15-dim"]{background:rgba(0,0,0,.8) !important;}
.game.scene-00-15 [data-layer-id="00.15-start-button"]{z-index:2900 !important;cursor:pointer !important;}


.topBar.legacyMenuBar{
  height:calc(var(--phone-h) * 272 / 1920) !important;
  background-size:100% 100% !important;
  background-position:left top !important;
  overflow:visible !important;
  pointer-events:none !important;
}
.topBar.legacyMenuBar .topIcon,
.topBar.legacyMenuBar .legacyPercent{pointer-events:auto !important;}

/* Generic blocking tutorial mask. Its source and opacity come from the
   scene's pnlTapaTutorial graphic in the CSD, not from a guessed gradient. */
.tutorialBlockingMask{
  position:absolute !important;
  inset:0 !important;
  z-index:2700 !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% 100% !important;
  background-color:transparent !important;
  pointer-events:auto !important;
}
.game.scene-00-10:has(.tutorialCompletionMask00_10) #contextButton{
  z-index:2900 !important;
  pointer-events:auto !important;
}

.tutorialCompletionShade00_10{display:none !important;}


.game.scene-00-09 .routeMapOverlay{z-index:9000 !important;}
.game.scene-00-09 .tutorialMapTopContent{z-index:4 !important;}
.game.scene-00-09 .tutorialMapCurtain{z-index:3 !important;}


.game.scene-00-09 .routeMapOverlay{
  z-index:1800 !important; /* map below the persistent menu (z-index 2000) */
}
.tutorialRouteMap .tutorialMapCurtain{
  opacity:1 !important; /* preserve the PNG's native CSD mask alpha */
  background-image:url('../assets/tutorial.top.abajo.png') !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-color:transparent !important;
}
/* Visible menu controls always use !!config.csd values. */
.topBar.legacyMenuBar .topIcon.map{left:calc(var(--phone-w) * 53 / 1080) !important;top:calc(var(--phone-h) * 23 / 1920) !important;width:calc(var(--phone-w) * 85 / 1080) !important;height:calc(var(--phone-h) * 85 / 1920) !important;}
.topBar.legacyMenuBar .topIcon.info{left:calc(var(--phone-w) * 202 / 1080) !important;top:calc(var(--phone-h) * 23 / 1920) !important;width:calc(var(--phone-w) * 85 / 1080) !important;height:calc(var(--phone-h) * 85 / 1920) !important;}
.topBar.legacyMenuBar .topIcon.music{left:calc(var(--phone-w) * 354 / 1080) !important;top:calc(var(--phone-h) * 23 / 1920) !important;width:calc(var(--phone-w) * 85 / 1080) !important;height:calc(var(--phone-h) * 85 / 1920) !important;}
.topBar.legacyMenuBar .topIcon.sound{left:calc(var(--phone-w) * 502 / 1080) !important;top:calc(var(--phone-h) * 23 / 1920) !important;width:calc(var(--phone-w) * 85 / 1080) !important;height:calc(var(--phone-h) * 85 / 1920) !important;}
.topBar.legacyMenuBar .topIcon.hint{left:calc(var(--phone-w) * 652 / 1080) !important;top:calc(var(--phone-h) * 23 / 1920) !important;width:calc(var(--phone-w) * 85 / 1080) !important;height:calc(var(--phone-h) * 85 / 1920) !important;}


.topBar.legacyMenuBar{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:calc(100% * 272 / 1920) !important;
  z-index:2000 !important;
  overflow:visible !important;
  pointer-events:none !important;
  background-image:url('../assets/fondo.menu.png') !important;
  background-position:0 0 !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
}
.topBar.legacyMenuBar .topIcon{
  position:absolute !important;
  top:calc(100% * 23 / 272) !important;
  width:calc(100% * 85 / 1080) !important;
  height:calc(100% * 85 / 272) !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  transform:none !important;
  pointer-events:auto !important;
}
.topBar.legacyMenuBar .topIcon.map{left:calc(100% * 53 / 1080) !important;}
.topBar.legacyMenuBar .topIcon.info{left:calc(100% * 202 / 1080) !important;}
.topBar.legacyMenuBar .topIcon.music{left:calc(100% * 354 / 1080) !important;}
.topBar.legacyMenuBar .topIcon.sound{left:calc(100% * 502 / 1080) !important;}
.topBar.legacyMenuBar .topIcon.hint{left:calc(100% * 652 / 1080) !important;}
.topBar.legacyMenuBar .topIcon img{display:block !important;width:100% !important;height:100% !important;object-fit:fill !important;}
.topBar.legacyMenuBar .legacyPercent{
  position:absolute !important;
  left:calc(100% * 805 / 1080) !important;
  top:calc(100% * 10 / 272) !important;
  width:calc(100% * 255 / 1080) !important;
  height:calc(100% * 128 / 272) !important;
  min-width:0 !important;
  right:auto !important;
  pointer-events:auto !important;
}
.game.scene-00-09 .routeMapOverlay{
  position:absolute !important;
  inset:0 !important;
  z-index:1800 !important;
}
.game.scene-00-09 .topBar.legacyMenuBar{z-index:2000 !important;}
.game.scene-00-09 .tutorialMapCurtain{
  position:absolute !important;
  inset:0 !important;
  z-index:3 !important;
  opacity:1 !important;
  background:transparent url('../assets/tutorial.top.abajo.png') 0 0/100% 100% no-repeat !important;
  pointer-events:auto !important;
}
.game.scene-00-09 .tutorialMapTopContent{z-index:4 !important;pointer-events:auto !important;}


#versionBadge{z-index:99999 !important;}
.game.scene-00-02 [data-layer-id="text-1"],
.game.scene-00-02 [data-layer-id="text-1"] .textInner,
.game.scene-00-02 [data-layer-id="text-1"] .textInner *,
.game.scene-00-02 [data-layer-id="text-2"],
.game.scene-00-02 [data-layer-id="text-2"] .textInner,
.game.scene-00-02 [data-layer-id="text-2"] .textInner *{
  font-family:CE_LocalNeoSansStdBoldItalic, "Neo Sans Std", sans-serif !important;
  font-style:italic !important;
  font-weight:700 !important;
  text-shadow:none !important;
}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar{
  height:calc(100% * 272 / 1920) !important;
  z-index:2000 !important;
  overflow:visible !important;
}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.active{
  top:calc(100% * 23 / 272) !important;
  width:calc(100% * 85 / 1080) !important;
  height:calc(100% * 85 / 272) !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
  filter:none !important;
}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.map{left:calc(100% * 53 / 1080) !important;}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.info{left:calc(100% * 202 / 1080) !important;}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.music{left:calc(100% * 354 / 1080) !important;}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.sound{left:calc(100% * 502 / 1080) !important;}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .topIcon.hint{left:calc(100% * 652 / 1080) !important;}
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent{
  position:absolute !important;
  left:calc(100% * 805 / 1080) !important;
  top:calc(100% * 10 / 272) !important;
  width:calc(100% * 255 / 1080) !important;
  height:calc(100% * 128 / 272) !important;
}
.routeMapOverlay.menuVisibleTutorialMap{
  top:calc(var(--phone-h) * 150 / 1920) !important;
  height:calc(var(--phone-h) * 1770 / 1920) !important;
}
.routeMapOverlay.menuVisibleTutorialMap .routeMapFrame,
.routeMapOverlay.menuVisibleTutorialMap .tutorialMapCurtain,
.routeMapOverlay.menuVisibleTutorialMap .tutorialMapTopContent,
.routeMapOverlay.menuVisibleTutorialMap .routeMapLoading{
  top:0 !important;
  bottom:0 !important;
  left:0 !important;
  right:0 !important;
}
.tutorialRouteMap .tutorialMapCurtain{
  opacity:1 !important;
}


#contextButton.pressedLock{opacity:.3 !important;pointer-events:none !important;filter:grayscale(.25) !important;}
.topBar.legacyMenuBar .legacyPercent{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  padding:0 calc(100% * 12 / 1080) 0 0 !important;
  box-sizing:border-box !important;
  font-family:CE_LocalDigital, monospace !important;
  font-size:calc(var(--phone-h) * 32 / 1920) !important;
  line-height:1 !important;
  color:#43cd00 !important;
  text-align:right !important;
}
.tutorialExclusiveShield{
  position:absolute !important;
  inset:0 !important;
  z-index:2680 !important;
  background:transparent !important;
  pointer-events:auto !important;
}
.tutorialExclusiveHotspot{
  position:absolute !important;
  z-index:2700 !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  cursor:pointer !important;
}
.tutorialExclusiveHotspot-00-09{
  left:calc(100% * 53 / 1080) !important;
  top:calc(100% * 23 / 1920) !important;
  width:calc(100% * 85 / 1080) !important;
  height:calc(100% * 85 / 1920) !important;
}
.tutorialExclusiveHotspot-00-13{
  left:calc(100% * 652 / 1080) !important;
  top:calc(100% * 23 / 1920) !important;
  width:calc(100% * 85 / 1080) !important;
  height:calc(100% * 85 / 1920) !important;
}
.tutorialExclusiveHotspot:disabled{pointer-events:none !important;}
.tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:9100 !important;
  background:rgba(0,0,0,.68) !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.tutorialHintsTopText00_13{
  position:absolute !important;
  left:10% !important;
  top:3% !important;
  width:80% !important;
  white-space:pre-line !important;
  text-align:center !important;
  color:#fff !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-h) * 18 / 640) !important;
  line-height:1.15 !important;
  transform:rotate(-4deg) !important;
  z-index:2 !important;
}
.tutorialHintsShell00_13{
  position:absolute !important;
  left:5% !important;
  top:15% !important;
  width:90% !important;
  height:78% !important;
  overflow:hidden !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  touch-action:pan-y !important;
}
.tutorialHintsTrack00_13{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  transition:transform 250ms ease-in-out !important;
}
.tutorialHintCard00_13{
  flex:0 0 100% !important;
  width:100% !important;
  height:100% !important;
  box-sizing:border-box !important;
  padding:20% 12% 18% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:center !important;
}
.tutorialHintCount00_13{
  margin-bottom:6% !important;
  color:#7a001d !important;
  font:700 calc(var(--phone-h) * 18 / 1920)/1 CE_LocalRoboto,sans-serif !important;
}
.tutorialHintText00_13{
  color:#27180e !important;
  text-align:center !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-h) * 42 / 1920) !important;
  line-height:1.2 !important;
}
.tutorialHintDots00_13{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:7% !important;
  display:flex !important;
  justify-content:center !important;
  gap:3% !important;
}
.tutorialHintDots00_13 i{width:3%;aspect-ratio:1;border-radius:50%;background:rgba(70,34,15,.25);}
.tutorialHintDots00_13 i.active{background:#78112d;}
.tutorialHintsOverlay00_13.lastHint{cursor:pointer !important;}


.game.scene-00-09 .topBar.legacyMenuBar .topIcon.map{
  z-index:2800 !important;
  pointer-events:auto !important;
}
.game.scene-00-09 .tutorialExclusiveShield-00-09,
.game.scene-00-09 .tutorialExclusiveHotspot-00-09{
  display:none !important;
  pointer-events:none !important;
}


.tutorialMapLaunchShield{
  position:absolute !important;
  inset:0 !important;
  z-index:2950 !important;
  background:transparent !important;
  pointer-events:auto !important;
}
.tutorialMapLaunchHotspot{
  position:absolute !important;
  left:calc(100% * 38 / 1080) !important;
  top:calc(100% * 10 / 1920) !important;
  width:calc(100% * 115 / 1080) !important;
  height:calc(100% * 115 / 1920) !important;
  z-index:2960 !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  cursor:pointer !important;
  pointer-events:auto !important;
}
.game.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap{
  z-index:3000 !important;
}
.game.tutorialMapActive .tutorialMapLaunchShield,
.game.tutorialMapActive .tutorialMapLaunchHotspot{
  display:none !important;
}
@keyframes tutorialCompletionMaskFastFade{
  from{opacity:0;}
  to{opacity:.8;}
}
.tutorialCompletionMask00_10{
  animation:tutorialCompletionMaskFastFade 120ms ease-out both !important;
  pointer-events:auto !important;
}


.tutorialMapGlobalMask{
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background-position:center center !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  opacity:1 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}
.tutorialMapGlobalTopContent{
  position:absolute !important;
  inset:0 !important;
  z-index:5100 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}
.game.tutorialMapActive .topBar.legacyMenuBar{
  z-index:4000 !important;
}


.tutorialMapGlobalMask{
  z-index:5000 !important;
}
.tutorialMapGlobalTopContent{
  z-index:6200 !important;
  pointer-events:auto !important;
}
.tutorialMapGlobalTopContent .tutorialMapText,
.tutorialMapGlobalTopContent .tutorialMapGraphic{
  z-index:6210 !important;
  position:absolute !important;
  pointer-events:none !important;
}
.tutorialMapExitBlackout{
  position:absolute !important;
  inset:0 !important;
  z-index:9500 !important;
  background:#000 !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity 120ms linear !important;
}
.tutorialMapExitBlackout.visible{opacity:1 !important;}
.topBar.legacyMenuBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent{
  left:calc(100% * 775 / 1080) !important;
  top:calc(100% * 25 / 272) !important;
  width:calc(100% * 285 / 1080) !important;
  height:calc(100% * 90 / 272) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  padding:0 calc(100% * 18 / 1080) 0 0 !important;
  box-sizing:border-box !important;
  font-family:CE_LocalDigital, CE_Digital, monospace !important;
  font-size:calc(var(--phone-w) * 62 / 1080) !important;
  line-height:1 !important;
  color:#43CD00 !important;
  text-shadow:0 0 calc(var(--phone-w) * 5 / 1080) rgba(67,205,0,.45) !important;
  white-space:nowrap !important;
  text-align:right !important;
}


.tutorialMapGlobalMask{
  z-index:9100 !important;
  pointer-events:auto !important;
}
.tutorialMapGlobalTopContent{
  z-index:9200 !important;
  pointer-events:auto !important;
}
.tutorialMapGlobalTopContent .tutorialMapText,
.tutorialMapGlobalTopContent .tutorialMapGraphic{
  z-index:9210 !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.tutorialMapExitBlackout{
  z-index:9500 !important;
  transition:opacity 250ms linear !important;
}
/* B4A computes FuenteTiempo.Size (32) through MultiplicadorTextos. The target
   reference line height is 53/1920 of pnlJuego; at the 1080×1920 logical
   canvas this corresponds to approximately 141 logical px for the digital
   percentage, then scales with the rendered phone width. */
.topBar.legacyMenuBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent{
  left:calc(100% * 805 / 1080) !important;
  top:calc(100% * 10 / 272) !important;
  width:calc(100% * 255 / 1080) !important;
  height:calc(100% * 128 / 272) !important;
  padding:0 !important;
  font-size:calc(var(--phone-w) * 141 / 1080) !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  text-align:right !important;
  overflow:visible !important;
}


.game.tutorialMapActive > .tutorialMapGlobalMask{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:9100 !important;
}
.game.tutorialMapActive > .tutorialMapGlobalTopContent{
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:9200 !important;
  visibility:visible !important;
  opacity:1 !important;
}
.game.tutorialMapActive > .tutorialMapGlobalTopContent .tutorialMapText,
.game.tutorialMapActive > .tutorialMapGlobalTopContent .tutorialMapGraphic{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}


.routeMapOverlay.menuVisibleTutorialMap{
  top:calc(var(--phone-h) * 150 / 1920) !important;
  bottom:0 !important;
  height:auto !important;
  min-height:0 !important;
}
.routeMapOverlay.menuVisibleTutorialMap .routeMapFrame{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  display:block !important;
}
/* The original continue control is only the PNG. No web halo, ring, tile or shadow. */
#contextButton,
#contextButton.locked,
#contextButton.timingLocked,
#contextButton.pressedLock{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
  background-color:transparent !important;
}
#contextButton::before,
#contextButton::after,
#contextButton.locked::before,
#contextButton.locked::after,
#contextButton.timingLocked::before,
#contextButton.timingLocked::after{
  content:none !important;
  display:none !important;
  border:0 !important;
  box-shadow:none !important;
}
#contextButton.locked,
#contextButton.timingLocked,
#contextButton.pressedLock{opacity:.3 !important;}

/* Files/!!config.csd:
   PanelPistasCont 50,250,980,1870; PanelPistasPag 125,75,955,-2;
   Pistas.Texto 10%,10%,80%,100%; fuente.jarofhearts.otf size 16;
   Pistas.Posicion 10%,50,15%.
*/
.tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  overflow:hidden !important;
  background:transparent !important;
}
.tutorialHintsTopText00_13{
  left:0 !important;
  top:3% !important;
  width:80% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:26.1px !important;
  line-height:1.12 !important;
  transform:rotate(-4deg) !important;
  color:#fff !important;
  text-align:center !important;
  white-space:pre-line !important;
  z-index:4 !important;
  pointer-events:none !important;
}
.tutorialHintsShell00_13{
  position:absolute !important;
  left:calc(100% * 50 / 1080) !important;
  top:calc(100% * 250 / 1920) !important;
  width:calc(100% * 980 / 1080) !important;
  height:calc(100% * 1870 / 1920) !important;
  overflow:hidden !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-position:0 0 !important;
  background-repeat:no-repeat !important;
  touch-action:pan-y !important;
  z-index:2 !important;
}
.tutorialHintsTrack00_13{
  position:absolute !important;
  inset:0 !important;
  display:flex !important;
  transition:transform 250ms linear !important;
}
.tutorialHintCard00_13{
  position:relative !important;
  flex:0 0 100% !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  box-sizing:border-box !important;
}
.tutorialHintPage00_13{
  position:absolute !important;
  left:calc(100% * 125 / 980) !important;
  top:calc(100% * 75 / 1870) !important;
  width:calc(100% * 955 / 980) !important;
  height:calc(100% - (100% * 75 / 1870)) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
.tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#27180e !important;
  text-align:center !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:23.2px !important;
  line-height:1.15 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  box-sizing:border-box !important;
}
.tutorialHintCount00_13{
  position:absolute !important;
  left:10% !important;
  top:50px !important;
  width:15% !important;
  height:auto !important;
  margin:0 !important;
  color:#7a001d !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:23.2px !important;
  line-height:1 !important;
  text-align:center !important;
}
.tutorialHintDots00_13{display:none !important;}


.game.scene-00-13 .tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  overflow:hidden !important;
  background:rgba(0,0,0,.75) !important;
  opacity:1 !important;
  transition:opacity 250ms linear !important;
}
.game.scene-00-13 .tutorialHintsOverlay00_13.closing{opacity:0 !important;}
.game.scene-00-13 .tutorialHintsTopText00_13{
  position:absolute !important;
  left:10% !important;
  top:calc(100% * (150 + 53.1) / 1920) !important;
  width:80% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  color:#fff !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:26.1px !important;
  line-height:1.12 !important;
  text-align:center !important;
  white-space:pre-line !important;
  transform:rotate(-4deg) !important;
  transform-origin:center !important;
  z-index:5 !important;
  pointer-events:none !important;
  text-shadow:2px 2px 2px #000 !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  position:absolute !important;
  left:0 !important;
  top:calc(100% * (150 + 250) / 1920) !important;
  width:100% !important;
  height:calc(100% * 1520 / 1920) !important;
  overflow:hidden !important;
  z-index:3 !important;
  touch-action:none !important;
  cursor:grab !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13:active{cursor:grabbing !important;}
.game.scene-00-13 .tutorialHintsTrack00_13{
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:300% !important;
  height:100% !important;
  display:flex !important;
  transition:transform 250ms cubic-bezier(.42,0,.58,1) !important;
  will-change:transform !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  position:relative !important;
  flex:0 0 33.333333% !important;
  width:33.333333% !important;
  height:100% !important;
  box-sizing:border-box !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-repeat:no-repeat !important;
  background-position:center top !important;
  background-size:calc(100% * 980 / 1080) 100% !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  position:absolute !important;
  left:calc(100% * 125 / 1080) !important;
  top:calc(100% * 75 / 1520) !important;
  width:calc(100% * 955 / 1080) !important;
  height:auto !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:calc(var(--phone-w) * 18 / 1080) !important;
  z-index:2 !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  display:block !important;
  width:calc(var(--phone-w) * 22 / 1080) !important;
  height:calc(var(--phone-w) * 22 / 1080) !important;
  box-sizing:border-box !important;
  border:calc(var(--phone-w) * 3 / 1080) solid #25170e !important;
  border-radius:50% !important;
  background:transparent !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  color:#25170e !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:23.2px !important;
  line-height:1.18 !important;
  font-weight:400 !important;
  text-align:center !important;
  white-space:pre-wrap !important;
  transform:none !important;
  z-index:2 !important;
  text-shadow:none !important;
  pointer-events:none !important;
}
/* Retire the obsolete fixed-shell implementation from earlier stages. */
.game.scene-00-13 .tutorialHintsShell00_13,
.game.scene-00-13 .tutorialHintCard00_13,
.game.scene-00-13 .tutorialHintPage00_13,
.game.scene-00-13 .tutorialHintDots00_13,
.game.scene-00-13 .tutorialHintCount00_13{display:none !important;}


.game.scene-00-13 .tutorialHintsTopText00_13{
  left:0 !important;
  top:10.578125% !important; /* 150 + 3% of pnlJuego(1770) = 203.1 / 1920 */
  width:80% !important;
  font-size:26.1px !important; /* B4A 18 × tutorial multiplier 1.45 */
  line-height:1.12 !important;
  z-index:8 !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  left:0 !important; /* B4A overrides PanelPistasCont.Left with pnlPistas.Left */
  top:20.8333333333% !important; /* pnlJuego 150 + PanelPistasCont.T 250 */
  width:100% !important; /* B4A overrides configured 980 with pnlPistas.Width */
  height:79.1666666667% !important; /* visible remainder; the 1870-high sheets are clipped */
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintsTrack00_13{
  width:300% !important;
  height:123.0263157895% !important; /* 1870 / visible 1520 */
  transition:transform 250ms cubic-bezier(.42,0,.58,1) !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  flex:0 0 33.3333333333% !important;
  width:33.3333333333% !important;
  height:100% !important;
  background-size:100% 100% !important;
  background-position:0 0 !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  left:11.5740740741% !important; /* 125 / 1080 */
  top:4.0106951872% !important; /* 75 / 1870 */
  width:88.4259259259% !important; /* 955 / 1080 */
}
.game.scene-00-13 .tutorialHintText00_13{
  left:10% !important;
  top:10% !important;
  width:80% !important;
  font-size:23.2px !important; /* B4A 16 × tutorial multiplier 1.45 */
  line-height:1.18 !important;
}


.game.scene-00-13 .tutorialHintsTopText00_13{
  left:0 !important;
  top:10.578125% !important;
  width:80% !important;
  z-index:12 !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  left:11.5740740741% !important; /* PanelPistasPag.L=125px */
  top:4.0106951872% !important;  /* PanelPistasPag.T=75px over 1870px */
  width:88.4259259259% !important;
  justify-content:flex-start !important; /* B4A Label has no centered gravity here */
  gap:calc(var(--phone-w) * 10 / 1080) !important;
  padding:0 !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 20 / 1080) !important;
  height:calc(var(--phone-w) * 20 / 1080) !important;
  border-width:calc(var(--phone-w) * 2 / 1080) !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:100% !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
}


.game.scene-00-13 .tutorialHintsOverlay00_13{
  position:absolute !important; inset:0 !important; z-index:5200 !important;
}
.game.scene-00-13 .tutorialHintsShade00_13{
  position:absolute !important; inset:0 !important; z-index:0 !important;
  background-position:center !important; background-repeat:no-repeat !important;
  background-size:100% 100% !important; opacity:1 !important; pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13{
  left:10% !important; top:calc(150px + 3%) !important; width:80% !important;
  z-index:3 !important; pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{z-index:2 !important;}
.game.scene-00-15 #contextButton{display:none !important;}
.game.scene-00-15 [data-layer-id="00.15-start-button"]{
  pointer-events:auto !important; cursor:pointer !important; z-index:4000 !important;
}
.topBar.legacyMenuBar .legacyPercent.missionClock{
  font-family:CE_LocalDigital, monospace !important;
  font-size:calc(var(--phone-w) * 62 / 1080) !important;
  line-height:1 !important;
  display:flex !important; align-items:flex-start !important; justify-content:flex-end !important;
  color:#43CD00 !important;
}


.game.scene-00-13 .tutorialHintsTopText00_13{display:none !important;}
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  /* !!config.csd FuenteTiempo.Size=32. */
  font-size:calc(var(--phone-w) * 32 / 1080) !important;
  line-height:1 !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  white-space:nowrap !important;
  overflow:visible !important;
}


.game.scene-00-13 .tutorialExclusiveShield-00-13{
  position:absolute !important;
  inset:0 !important;
  z-index:2100 !important;
  background:transparent !important;
}
.game.scene-00-13 .tutorialExclusiveHotspot-00-13{
  position:absolute !important;
  left:calc(100% * 638 / 1080) !important;
  top:calc(100% * 10 / 1920) !important;
  width:calc(100% * 115 / 1080) !important;
  height:calc(100% * 115 / 1920) !important;
  z-index:2600 !important;
  border:0 !important;
  background:transparent !important;
}
.game.scene-00-13 .topBar .topIcon.hint.tutorialHintIntro00_13{z-index:2400 !important;}
.game.scene-00-13 .topBar .topIcon.hint.tutorialHintReady00_13{
  animation:ceHintReadyPulse00_13 500ms ease-in-out 2;
}
@keyframes ceHintReadyPulse00_13{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.2)}
}
.game.scene-00-13 .tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background:transparent !important;
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintsShade00_13{
  position:absolute !important;
  left:0 !important;
  top:calc(100% * 150 / 1920) !important;
  width:100% !important;
  height:calc(100% * 1770 / 1920) !important;
  z-index:0 !important;
  opacity:1 !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13{
  display:block !important;
  position:absolute !important;
  left:0 !important;
  top:calc(100% * 203 / 1920) !important;
  width:80% !important;
  height:auto !important;
  z-index:1 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 52 / 1080) !important;
  line-height:1.05 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  text-shadow:0 2px 2px rgba(0,0,0,.85) !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  position:absolute !important;
  left:calc(100% * 50 / 1080) !important;
  top:calc(100% * 400 / 1920) !important;
  width:100% !important;
  height:calc(100% * 1520 / 1920) !important;
  z-index:2 !important;
  overflow:hidden !important;
  background:transparent !important;
}
.game.scene-00-13 .tutorialHintsTrack00_13{
  height:100% !important;
  transition:transform 250ms ease-in-out !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  position:relative !important;
  flex:0 0 33.333333% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:0 0 !important;
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  position:absolute !important;
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 75 / 1920) !important;
  width:calc(100% * 955 / 1080) !important;
  height:auto !important;
  display:flex !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:calc(var(--phone-w) * 12 / 1080) !important;
  z-index:3 !important;
  color:#25170e !important;
  font-family:Arial,sans-serif !important;
  font-size:calc(var(--phone-w) * 38 / 1080) !important;
  line-height:1 !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  display:inline-block !important;
  width:auto !important;
  height:auto !important;
  aspect-ratio:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#25170e !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:100% !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 46 / 1080) !important;
  line-height:1.08 !important;
  color:#25170e !important;
  text-align:center !important;
  display:block !important;
  padding:0 !important;
}
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  font-size:calc(var(--phone-w) * 58 / 1080) !important;
  line-height:1 !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
  text-align:right !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}


.game.scene-00-13 .tutorialHintsTopText00_13{
  left:0 !important;
  top:calc(100% * 203.1 / 1920) !important; /* 150 + 3% of 1770 */
  width:80% !important;
  max-width:80% !important;
  font-size:calc(var(--phone-w) * 36 / 1080) !important; /* Text.Size.2=18 B4A */
  line-height:1.12 !important;
  z-index:1 !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  left:0 !important; /* B4A overwrites PanelPistasCont.Left with pnlPistas.Left */
  top:calc(100% * 380.46875 / 1920) !important; /* 150 + 250×1770/1920 */
  width:100% !important; /* B4A overwrites W=980 with pnlPistas.Width */
  height:calc(100% * 1539.53125 / 1920) !important;
  z-index:2 !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  height:calc(var(--phone-h) * 1724.21875 / 1920) !important; /* 1870×1770/1920 */
  background-size:100% 100% !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 69.140625 / 1920) !important; /* 75×1770/1920 */
  width:calc(100% * 955 / 1080) !important;
  min-height:calc(var(--phone-w) * 54 / 1080) !important;
  gap:calc(var(--phone-w) * 18 / 1080) !important;
  align-items:center !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  display:block !important;
  flex:0 0 auto !important;
  width:calc(var(--phone-w) * 34 / 1080) !important;
  height:calc(var(--phone-w) * 34 / 1080) !important;
  border:calc(var(--phone-w) * 4 / 1080) solid #25170e !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  background:transparent !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13.available{
  background:transparent !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:100% !important;
  font-size:calc(var(--phone-w) * 32 / 1080) !important; /* Pistas.Texto.Size=16 B4A */
  line-height:1.12 !important;
}


.topBar.legacyMenuBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent,
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  left:calc(100% * 805 / 1080) !important;
  top:calc(100% * 14 / 272) !important;
  width:calc(100% * 255 / 1080) !important;
  height:calc(100% * 112 / 272) !important;
  font-family:CE_LocalDigital, monospace !important;
  font-size:calc(var(--phone-w) * 48 / 1080) !important;
  line-height:.92 !important;
  color:#43CD00 !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
  text-align:right !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}
.game.scene-00-13 .tutorialHintsOverlay00_13{
  background:transparent !important;
}
/* The intro copy stays in pnlJuego under the menu. It is not attached to the note. */
.game.scene-00-13 .tutorialHintsTopText00_13{
  top:calc(100% * 203.1 / 1920) !important;
  left:0 !important;
  width:80% !important;
  font-size:calc(var(--phone-w) * 48 / 1080) !important;
  line-height:1.08 !important;
  z-index:1 !important;
}
/* pnlPistasContDentro is moved horizontally, while the active pPistas is slid up/down vertically. */
.game.scene-00-13 .tutorialHintsViewport00_13{
  left:0 !important;
  top:calc(100% * 150 / 1920) !important;
  width:100% !important;
  height:calc(100% * 1770 / 1920) !important;
  overflow:hidden !important;
  z-index:2 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialHintsTrack00_13{
  height:100% !important;
  transition:transform 250ms ease-in-out !important;
  align-items:stretch !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  position:relative !important;
  flex:0 0 33.333333% !important;
  height:calc(var(--phone-h) * 1724.21875 / 1920) !important;
  margin-top:calc(var(--phone-h) * 620 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:0 0 !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 69.140625 / 1920) !important;
  width:calc(100% * 955 / 1080) !important;
  height:calc(var(--phone-w) * 70 / 1080) !important;
  display:flex !important;
  gap:calc(var(--phone-w) * 16 / 1080) !important;
  align-items:center !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 46 / 1080) !important;
  height:calc(var(--phone-w) * 46 / 1080) !important;
  border:calc(var(--phone-w) * 5 / 1080) solid #25170e !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  background:transparent !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  left:10% !important;
  top:10% !important;
  width:80% !important;
  height:auto !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 52 / 1080) !important;
  line-height:1.08 !important;
  color:#25170e !important;
  text-align:center !important;
  padding:0 !important;
}


.game.scene-00-13 .tutorialExclusiveShield-00-13{
  position:absolute !important;
  inset:0 !important;
  z-index:2350 !important;
  background-image:url('../assets/tutorial.top.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  opacity:.6 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .topBar.legacyMenuBar{z-index:2200 !important;}
.game.scene-00-13 .tutorialExclusiveHotspot-00-13{
  z-index:2550 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13{
  /* Texto.T.2=3%% inside pnlTocadorTutorialTop/pnlJuego; visible only after bulb tap. */
  display:block !important;
  top:calc(var(--phone-h) * (150 + 53.1) / 1920) !important;
  left:10% !important;
  width:80% !important;
  z-index:1 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 46 / 1080) !important;
  line-height:1.08 !important;
  color:#fff !important;
  text-align:center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  top:calc(var(--phone-h) * 150 / 1920) !important;
  height:calc(var(--phone-h) * 1770 / 1920) !important;
  z-index:2 !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  /* JS computes marginTop from B4A AlturaPanel formula. */
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  margin-top:0;
  background-size:100% 100% !important;
  transition:transform 250ms ease-in-out !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 75 / 1920) !important;
  width:calc(100% * 955 / 1080) !important;
  height:calc(var(--phone-w) * 60 / 1080) !important;
  display:flex !important;
  gap:calc(var(--phone-w) * 13 / 1080) !important;
  align-items:center !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 34 / 1080) !important;
  height:calc(var(--phone-w) * 34 / 1080) !important;
  border:calc(var(--phone-w) * 4 / 1080) solid #25170e !important;
  border-radius:50% !important;
  background:transparent !important;
  box-sizing:border-box !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  left:10% !important;
  top:10% !important;
  width:80% !important;
  font-size:calc(var(--phone-w) * 50 / 1080) !important;
  line-height:1.08 !important;
  color:#25170e !important;
}
.topBar.legacyMenuBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent,
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  left:calc(100% * 805 / 1080) !important;
  top:calc(100% * 12 / 272) !important;
  width:calc(100% * 255 / 1080) !important;
  height:calc(100% * 118 / 272) !important;
  font-family:CE_LocalDigital, monospace !important;
  font-size:calc(var(--phone-w) * 42 / 1080) !important;
  line-height:.95 !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
  text-align:right !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}


.game.scene-00-13 .tutorialExclusiveShield-00-13.csdTutorialMask00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:2350 !important;
  background-image:url('../assets/tutorial.5.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  background-color:transparent !important;
  opacity:.8 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .topBar .topIcon.hint.tutorialHintIntro00_13,
.game.scene-00-13 .topBar .topIcon.hint.tutorialHintReady00_13{
  z-index:2450 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialExclusiveHotspot-00-13{
  z-index:2550 !important;
  pointer-events:auto !important;
  background:transparent !important;
  border:0 !important;
}
.game.scene-00-13 .tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background:transparent !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialHintsShade00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background-image:url('../assets/tutorial.top.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  opacity:.6 !important;
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13{
  display:block !important;
  position:absolute !important;
  left:10% !important;
  top:calc(var(--phone-h) * (150 + 53.1) / 1920) !important;
  width:80% !important;
  z-index:1 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 46 / 1080) !important;
  line-height:1.08 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  position:absolute !important;
  left:0 !important;
  top:calc(var(--phone-h) * 150 / 1920) !important;
  width:100% !important;
  height:calc(var(--phone-h) * 1770 / 1920) !important;
  z-index:2 !important;
  overflow:hidden !important;
  pointer-events:auto !important;
  touch-action:pan-y !important;
}
.game.scene-00-13 .tutorialHintsTrack00_13{
  height:100% !important;
  display:flex !important;
  width:300% !important;
  transition:transform 250ms ease-in-out !important;
  align-items:stretch !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  position:relative !important;
  flex:0 0 33.333333% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:0 0 !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.scene-00-13 .tutorialHintsOverlay00_13.opening .tutorialHintSheet00_13,
.game.scene-00-13 .tutorialHintsOverlay00_13.closing .tutorialHintSheet00_13{
  transform:translateY(calc(var(--phone-h) * 1770 / 1920)) !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  position:absolute !important;
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 75 / 1920) !important;
  width:calc(100% * 955 / 1080) !important;
  height:calc(var(--phone-w) * 70 / 1080) !important;
  z-index:3 !important;
  display:flex !important;
  gap:calc(var(--phone-w) * 16 / 1080) !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  display:inline-block !important;
  width:calc(var(--phone-w) * 36 / 1080) !important;
  height:calc(var(--phone-w) * 36 / 1080) !important;
  border:calc(var(--phone-w) * 4 / 1080) solid #25170e !important;
  border-radius:50% !important;
  background:transparent !important;
  box-sizing:border-box !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13.current{
  background:#25170e !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:10% !important;
  width:80% !important;
  z-index:2 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 54 / 1080) !important;
  line-height:1.08 !important;
  color:#25170e !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:none !important;
  pointer-events:none !important;
}


.game.scene-00-13 .tutorialExclusiveShield-00-13.csdTutorialMask00_13{
  background-image:url('../assets/tutorial.5.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  opacity:.8 !important;
}
.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="text-1"],
.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="graphic-2"],
.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="graphic-3"],
.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="graphic-4"],
.game.scene-00-13.tutorialHintsOpen00_13 .tutorialExclusiveShield-00-13,
.game.scene-00-13.tutorialHintsOpen00_13 .tutorialExclusiveHotspot-00-13{
  display:none !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  left:10% !important;
  top:calc(var(--phone-h) * 576 / 1920) !important;
  width:80% !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 46 / 1080) !important;
  line-height:1.08 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  z-index:6 !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  font-size:calc(var(--phone-w) * 54 / 1080) !important;
  line-height:1.08 !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 34 / 1080) !important;
  height:calc(var(--phone-w) * 34 / 1080) !important;
  border-width:calc(var(--phone-w) * 4 / 1080) !important;
}


.game.scene-00-13 .topBar .topIcon.hint.tutorialHintSwitching00_13 img{
  opacity:0 !important;
  transition:opacity 120ms linear !important;
}
.game.scene-00-13 .topBar .topIcon.hint.tutorialHintReady00_13 img{
  opacity:1 !important;
  transition:opacity 120ms linear !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  /* Same visual slot as Texto.1: x=10%%, y=30%%, w=80%%. */
  left:10% !important;
  top:calc(var(--phone-h) * 576 / 1920) !important;
  width:80% !important;
  font-size:calc(var(--phone-w) * 50 / 1080) !important;
  line-height:1.06 !important;
  transform:rotate(-4deg) !important;
  text-align:center !important;
  z-index:7 !important;
}
.game.scene-00-13 .tutorialHintsViewport00_13{
  pointer-events:auto !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:calc(var(--phone-h) * 390 / 1920) !important;
  max-height:calc(var(--phone-h) * 1080 / 1920) !important;
  background-size:100% 100% !important;
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  font-size:calc(var(--phone-w) * 66 / 1080) !important;
  line-height:1.03 !important;
  top:calc(var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) * .22) !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 75 / 1920) !important;
}
.game.scene-00-13 .tutorialHintsOverlay00_13.lastHint{
  cursor:pointer;
}


.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="text-1"],
.game.scene-00-13.tutorialHintsOpen00_13 .legacyLayer[data-layer-id="text-1"],
.game.scene-00-13.tutorialHintsOpen00_13 div[data-layer-id="text-1"]{
  opacity:0 !important;
  visibility:hidden !important;
  display:none !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  left:10% !important;
  top:calc(var(--phone-h) * 576 / 1920) !important;
  width:80% !important;
  font-size:calc(var(--phone-w) * 50 / 1080) !important;
  line-height:1.06 !important;
  transform:rotate(-4deg) !important;
  z-index:7 !important;
}
.game.scene-00-13 .tutorialHintSheet00_13{
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:calc(var(--phone-h) * 420 / 1920) !important;
  max-height:calc(var(--phone-h) * 1050 / 1920) !important;
  background-image:none !important;
  background:none !important;
  overflow:hidden !important;
}
.game.scene-00-13 .tutorialHintSheetInner00_13{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:top center !important;
  pointer-events:none !important;
}
.game.scene-00-13 .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 84 / 1920) !important;
  left:calc(100% * 125 / 1080) !important;
  gap:calc(var(--phone-w) * 18 / 1080) !important;
}
.game.scene-00-13 .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 38 / 1080) !important;
  height:calc(var(--phone-w) * 38 / 1080) !important;
  border-width:calc(var(--phone-w) * 5 / 1080) !important;
}
.game.scene-00-13 .tutorialHintText00_13{
  top:calc(var(--phone-h) * 190 / 1920) !important;
  font-size:calc(var(--phone-w) * 64 / 1080) !important;
  line-height:1.04 !important;
}


.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="text-1"],
.game.scene-00-13.tutorialHintsOpen00_13 [data-layer-id="00.13-text-1"],
.game.scene-00-13.tutorialHintsOpen00_13 [data-stage143-hidden],
.game.scene-00-13.tutorialHintsOpen00_13 .tutorialIntroText00_13{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 54 / 1080) !important;
  line-height:1.06 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  pointer-events:none !important;
  z-index:7000 !important;
}


.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  left:10% !important;
  top:30% !important;
  width:80% !important;
  height:auto !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 54 / 1080) !important;
  line-height:1.06 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  z-index:7000 !important;
  pointer-events:none !important;
}


.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  font-size:calc(var(--phone-w) * 68 / 1080) !important;
  line-height:1.06 !important;
}


/* 00.09 map: hide iframe until it really loads. Loader uses B4A lblSplashEspera:
   Typeface.DEFAULT bold, TextSize=18*MultiplicadorTextos, centered/bottom. */
.game.scene-00-09 .routeMapFrame.routeMapFrameLoading{
  opacity:0 !important;
  visibility:hidden !important;
}
.game.scene-00-09 .routeMapFrame.routeMapFrameReady{
  opacity:1 !important;
  visibility:visible !important;
  transition:opacity 120ms linear !important;
}
.game.scene-00-09 .routeMapLoading{
  inset:0 !important;
  width:auto !important;
  height:auto !important;
  transform:none !important;
  left:0 !important;
  top:0 !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  padding-bottom:10% !important;
  background:#000 !important;
  color:#e0c35a !important;
  border:0 !important;
  border-radius:0 !important;
  font-family:Arial, sans-serif !important;
  font-size:26.1px !important; /* 18 × MultiplicadorTextos≈1.45 */
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}

/* Continue arrow: existing engine timing only. Visible while enableDelay runs, disabled by updateStatus. */
.contextButton.timingLocked,
.contextButton.locked,
.contextButton.pressedLock{
  opacity:.3 !important;
  pointer-events:none !important;
}

/* Keep the 00.13 text replacement fade; do not touch note/indicators. */
.game.scene-00-13 .tutorialHintsTopText00_13.replaceInitialText00_13{
  transition:opacity 250ms linear !important;
}

/* Clock from !!config.csd:
   TextoTiempo L=805pt T=10px W=300px H=1280px, FuenteTiempo.Size=32.
   Use direct B4A text size instead of scaling through phone width, which made it tiny. */
.topBar.legacyMenuBar .legacyPercent,
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  left:calc(var(--phone-w) * 805 / 1080) !important;
  top:calc(var(--phone-h) * 10 / 1920) !important;
  width:calc(var(--phone-w) * 300 / 1080) !important;
  height:calc(var(--phone-h) * 1280 / 1920) !important;
  font-family:CE_LocalDigital, monospace !important;
  font-size:46.4px !important; /* FuenteTiempo.Size=32 × MultiplicadorTextos≈1.45 */
  line-height:.9 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-end !important;
  text-align:right !important;
  white-space:nowrap !important;
  overflow:visible !important;
}


.topBar.legacyMenuBar .legacyPercent,
.topBar.legacyMenuBar .legacyPercent.missionClock,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent,
.game .topBar.legacyMenuBar.tutorialLegacyTopBar .legacyPercent.missionClock{
  left:calc(var(--phone-w) * 755 / 1080) !important;
  width:calc(var(--phone-w) * 300 / 1080) !important;
  font-size:46.4px !important;
}

.game.scene-00-01 .layer[data-layer-id="graphic-2"],
.game.scene-00-01 .imageLayer[data-layer-id="graphic-2"]{
  top:calc(var(--phone-h) * 1490 / 1920) !important;
}

/* 00.09 map loader: same family as 00.01 top clean text:
   00.01 text-1/text-2 CSD uses fuente.cabin.ttf. */
.game.scene-00-09 .routeMapLoading{
  font-family:CE_LocalCabin, Cabin, Arial, sans-serif !important;
  font-size:calc(var(--phone-w) * 32 / 1080) !important;
  font-weight:700 !important;
  color:#e0c35a !important;
  inset:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 10% !important;
  text-align:center !important;
  background:#000 !important;
  border:0 !important;
  border-radius:0 !important;
}

/* 00.11 must not keep the larger rich-text inner size from its imported CSD markup.
   Force the outer B4A Size=18 equivalent and neutralize nested 36/28px spans. */
.game.scene-00-11 .textLayer[data-layer-id="text-1"],
.game.scene-00-12 .textLayer[data-layer-id="text-1"],
.game.scene-00-09 .textLayer[data-layer-id="text-1"],
.game.scene-00-13 .textLayer[data-layer-id="text-1"],
.game.scene-00-14 .textLayer[data-layer-id="00.14-text-1"],
.game.scene-00-14 .textLayer[data-layer-id="00.14-text-2"]{
  font-family:CE_LocalJar,cursive !important;
  font-size:26.1px !important; /* B4A Size=18 × MultiplicadorTextos≈1.45 */
  line-height:1.08 !important;
}
.game.scene-00-11 .textLayer[data-layer-id="text-1"] *,
.game.scene-00-12 .textLayer[data-layer-id="text-1"] *,
.game.scene-00-09 .textLayer[data-layer-id="text-1"] *,
.game.scene-00-13 .textLayer[data-layer-id="text-1"] *,
.game.scene-00-14 .textLayer[data-layer-id="00.14-text-1"] *,
.game.scene-00-14 .textLayer[data-layer-id="00.14-text-2"] *{
  font-size:inherit !important;
  line-height:inherit !important;
}

/* 00.10: keep CSD x/w/rotation, lower only the tutorial explanatory text a little
   so it sits closer to the object graphic without changing the puzzle itself. */
.game.scene-00-10 .textLayer[data-layer-id="text-1"]{
  top:calc(var(--phone-h) * 430 / 1920) !important;
}


.game.scene-00-01 .layer[data-layer-id="graphic-2"],
.game.scene-00-01 .imageLayer[data-layer-id="graphic-2"]{
  top:calc(var(--phone-h) * 1465 / 1920) !important;
}

/* 00.09 map loader: same Cabin family, but white and a bit larger. */
.game.scene-00-09 .routeMapLoading{
  color:#fff !important;
  font-size:calc(var(--phone-w) * 38 / 1080) !important;
  font-family:CE_LocalCabin, Cabin, Arial, sans-serif !important;
  font-weight:700 !important;
  text-align:center !important;
}


.game.scene-00-10 .textLayer[data-layer-id="text-1"]{
  top:calc(var(--phone-h) * 310 / 1920) !important;
}

/* 00.09 warning: keep CSD relationship but tighten the perceived group.
   The original CSD puts icon L=9%% W=16%% and text L=25%%, which mathematically touches.
   In the web render the PNG transparent padding makes them look farther apart, so move the icon
   slightly right and align vertically with the warning text. */
.game.scene-00-09 .layer[data-layer-id="graphic-3"],
.game.scene-00-09 .imageLayer[data-layer-id="graphic-3"]{
  left:calc(var(--phone-w) * 118 / 1080) !important;
  top:calc(var(--phone-h) * 1470 / 1920) !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.75)) !important;
}
.game.scene-00-09 .textLayer[data-layer-id="text-3"]{
  left:calc(var(--phone-w) * 250 / 1080) !important;
  top:calc(var(--phone-h) * 1462 / 1920) !important;
  text-shadow:0 2px 2px rgba(0,0,0,.75) !important;
}
.game.scene-00-09 .textLayer[data-layer-id="text-3"] *{
  text-shadow:inherit !important;
}


.tutorialMapDeferredOverlay{
  opacity:0 !important;
  pointer-events:none !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady{
  transition:opacity 140ms ease-out !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady.visible{
  opacity:1 !important;
  pointer-events:auto !important;
}

.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:12.2% !important;
  top:78.2% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.82)) !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"]{
  left:23.2% !important;
  top:75.9% !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"] *,
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.82) !important;
}


.tutorialMapDeferredOverlay{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady{
  transition:opacity 130ms ease-out !important, visibility 0s linear 0s !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady.visible{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:14.1% !important;
  top:76.8% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.84)) !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"] *,
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.84) !important;
}


.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:15.2% !important;
  top:75.3% !important;
}


.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:15.9% !important;
  top:74.6% !important;
}


.tutorialMapDeferredOverlay{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady{
  transition:opacity 150ms ease-out !important;
}
.tutorialMapDeferredOverlay.tutorialMapPromptReady.visible{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalMask{
  position:absolute !important;
  inset:0 !important;
  z-index:9100 !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  cursor:pointer !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:9200 !important;
  cursor:pointer !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent .tutorialMapText,
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent .tutorialMapGraphic{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:absolute !important;
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:16.4% !important;
  top:73.9% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.86)) !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"]{
  left:20.6% !important;
  top:73.6% !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"]{
  top:85.9% !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-3"] *,
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"],
.game.scene-00-09.tutorialMapActive > .tutorialMapGlobalTopContent [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.86) !important;
}


.routeMapOverlay .tutorialMapGlobalMask{
  position:absolute !important;
  inset:0 !important;
  z-index:40 !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  cursor:pointer !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:41 !important;
  cursor:pointer !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent .tutorialMapText,
.routeMapOverlay .tutorialMapGlobalTopContent .tutorialMapGraphic{
  position:absolute !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.routeMapOverlay .tutorialMapDeferredOverlay{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.routeMapOverlay .tutorialMapDeferredOverlay.tutorialMapPromptReady.visible{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="graphic-3"]{
  left:16.4% !important;
  top:73.9% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.86)) !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-3"]{
  left:20.6% !important;
  top:73.6% !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-2"]{
  top:85.9% !important;
}
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-3"],
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-3"] *,
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-2"],
.routeMapOverlay .tutorialMapGlobalTopContent [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.86) !important;
}


.routeMapOverlay .ceMapTutorialPrompt{
  position:absolute !important;
  inset:0 !important;
  z-index:2147483000 !important;
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity 150ms ease-out !important;
}
.routeMapOverlay .ceMapTutorialPrompt.visible{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.routeMapOverlay .ceMapTutorialMask{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  pointer-events:auto !important;
}
.routeMapOverlay .ceMapTutorialTop{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  z-index:2 !important;
  pointer-events:auto !important;
}
.routeMapOverlay .ceMapTutorialTop .tutorialMapText,
.routeMapOverlay .ceMapTutorialTop .tutorialMapGraphic{
  position:absolute !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.routeMapOverlay .ceMapTutorialTop [data-layer-id="graphic-3"]{
  left:16.4% !important;
  top:73.9% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.86)) !important;
}
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-3"]{
  left:20.6% !important;
  top:73.6% !important;
}
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-2"]{
  top:85.9% !important;
}
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-3"],
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-3"] *,
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-2"],
.routeMapOverlay .ceMapTutorialTop [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.86) !important;
}


.tutorialSceneBackdrop{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.tutorialSceneBackdrop > *{
  pointer-events:none !important;
}
.game.scene-00-09 .tutorialSceneBackdrop{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap,
.game.scene-00-09.tutorialMapActive .routeMapOverlay.tutorialRouteMap{
  z-index:5000 !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar,
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .topIcon,
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .legacyPercent{
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar{
  z-index:2500 !important;
}


/* Initial 00.09: keep the universal menu bar visible above the black tutorial mask. */
.game.scene-00-09:not(.tutorialMapActive) .topBar.legacyMenuBar{
  z-index:3600 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
/* Only the invisible CSD hotspot over the map icon can receive the tap. */
.game.scene-00-09:not(.tutorialMapActive) .tutorialMapLaunchHotspot{
  z-index:3800 !important;
  pointer-events:auto !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorialMapLaunchShield{
  z-index:3700 !important;
  pointer-events:auto !important;
}

/* The black CSD mask/tutorial.1 must sit below the visible top menu. */
.game.scene-00-09:not(.tutorialMapActive) [data-layer-id="graphic-1"]{
  z-index:2500 !important;
}

/* Open map: put the map below the visible menu, then put the tutorial prompt
   over both map and menu so it blocks all touches and advances on tap. */
.game.scene-00-09.tutorialMapActive .routeMapOverlay.tutorialRouteMap,
.game.scene-00-09.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap{
  z-index:3000 !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .topIcon,
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .legacyPercent{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}

.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialPrompt{
  z-index:5000 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialMask{
  pointer-events:auto !important;
}


/* Initial state: put full menu below CSD mask. The mask itself decides what is visible. */
.game.scene-00-09:not(.tutorialMapActive) .topBar.legacyMenuBar{
  z-index:2200 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.game.scene-00-09:not(.tutorialMapActive) .topBar.legacyMenuBar .topIcon,
.game.scene-00-09:not(.tutorialMapActive) .topBar.legacyMenuBar .legacyPercent{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.game.scene-00-09:not(.tutorialMapActive) [data-layer-id="graphic-1"]{
  z-index:3300 !important;
  pointer-events:none !important;
}
.game.scene-00-09:not(.tutorialMapActive) [data-layer-id="graphic-2"],
.game.scene-00-09:not(.tutorialMapActive) [data-layer-id="text-1"]{
  z-index:3900 !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorialMapLaunchShield{
  z-index:3400 !important;
  pointer-events:auto !important;
  background:transparent !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorialMapLaunchHotspot{
  z-index:4100 !important;
  pointer-events:auto !important;
  background:transparent !important;
}

/* Map opened: the route map can remain below the visual menu, but the CSD prompt
   prompt/mask is above everything and blocks the menu. */
.game.scene-00-09.tutorialMapActive .routeMapOverlay.tutorialRouteMap,
.game.scene-00-09.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap{
  z-index:3000 !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar{
  z-index:3600 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialPrompt{
  z-index:9000 !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialMask{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:auto !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialTop{
  z-index:2 !important;
  pointer-events:auto !important;
}


.game.scene-00-09:not(.tutorialMapActive) [data-layer-id="graphic-1"]{
  opacity:.8 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .ceMapTutorialMask{
  opacity:.6 !important;
}
/* Same CSD approach already used by 00.10/00.11 masks: the top menu remains
   behind the semi-transparent mask, and the transparent aperture still exposes
   the target icon. */


.game.scene-00-09 .tutorialSceneBackdrop .textLayer[data-layer-id="destination-text"]{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  background:rgba(0,0,0,.49) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,.69) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
}
.game.scene-00-09 .tutorialSceneBackdrop .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.12 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.game.scene-00-09 .tutorialSceneBackdrop .destinationTitle{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 18 / 1080) !important;
  font-weight:700 !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.game.scene-00-09 .tutorialSceneBackdrop .destinationPlace{
  color:#fff !important;
  font-size:calc(var(--phone-w) * 24 / 1080) !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.game.scene-00-09 .tutorialSceneBackdrop .destinationAddress{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 16 / 1080) !important;
  line-height:1.08 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}

/* Map-open prompt now lives as a direct game child, above the topbar.
   This is needed because a child of routeMapOverlay cannot cover siblings
   outside that stacking context. */
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity 150ms ease-out !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt.visible{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt .ceMapTutorialMask{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  opacity:.6 !important; /* Panel.Transparencia=0.6 */
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt .ceMapTutorialTop{
  position:absolute !important;
  inset:0 !important;
  z-index:2 !important;
  pointer-events:auto !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt .tutorialMapText,
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt .tutorialMapGraphic{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:absolute !important;
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="graphic-3"]{
  left:16.4% !important;
  top:73.9% !important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.86)) !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-3"]{
  left:20.6% !important;
  top:73.6% !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-2"]{
  top:85.9% !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-3"],
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-3"] *,
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-2"],
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt [data-layer-id="text-2"] *{
  text-shadow:0 2px 2px rgba(0,0,0,.86) !important;
}

/* Keep route map below visible topbar; direct prompt above captures all taps. */
.game.scene-00-09.tutorialMapActive .routeMapOverlay.tutorialRouteMap,
.game.scene-00-09.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap{
  z-index:3000 !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar{
  z-index:3600 !important;
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .topIcon,
.game.scene-00-09.tutorialMapActive .topBar.legacyMenuBar .legacyPercent{
  pointer-events:none !important;
}


.routeMapOverlay .mapDestinationOverlayLabel{
  position:absolute !important;
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  z-index:80 !important;
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  background:rgba(0,0,0,.49) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,.69) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  pointer-events:none !important;
  transition:opacity 150ms ease-out !important;
}
.routeMapOverlay .mapDestinationOverlayLabel .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.12 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.routeMapOverlay .mapDestinationOverlayLabel .destinationTitle{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 18 / 1080) !important;
  font-weight:700 !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.routeMapOverlay .mapDestinationOverlayLabel .destinationPlace{
  color:#fff !important;
  font-size:calc(var(--phone-w) * 24 / 1080) !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.routeMapOverlay .mapDestinationOverlayLabel .destinationAddress{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 16 / 1080) !important;
  line-height:1.08 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}


.routeMapOverlay .mapDestinationOverlayLabel.visible{
  visibility:visible !important;
  opacity:1 !important;
  display:block !important;
}


.game.scene-00-09 .tutorialSceneBackdrop [data-layer-id="graphic-1"],
.game.scene-00-09 .tutorialSceneBackdrop [data-layer-id="graphic-2"],
.game.scene-00-09 .tutorialSceneBackdrop [data-layer-id="graphic-3"]{
  display:none !important;
}
.destinationTextOverlay{
  position:absolute !important;
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  background:rgba(0,0,0,.49) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,.69) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  pointer-events:none !important;
}
.destinationTextOverlay .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.12 !important;
  text-align:center !important;
}
.destinationTextOverlay .destinationTitle{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 18 / 1080) !important;
  font-weight:700 !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.destinationTextOverlay .destinationPlace{
  color:#fff !important;
  font-size:calc(var(--phone-w) * 24 / 1080) !important;
  line-height:1.15 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.destinationTextOverlay .destinationAddress{
  color:#e2e2e2 !important;
  font-size:calc(var(--phone-w) * 16 / 1080) !important;
  line-height:1.08 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorial09DestinationInitial{
  z-index:2400 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}
.routeMapOverlay .mapDestinationOverlayLabel{
  z-index:80 !important;
  display:block !important;
  visibility:hidden !important;
  opacity:0 !important;
  transition:opacity 150ms ease-out !important;
}
.routeMapOverlay .mapDestinationOverlayLabel.visible{
  visibility:visible !important;
  opacity:1 !important;
}


.destinationTextOverlay{
  left:15% !important;
  width:70% !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 20 / 1080) calc(var(--phone-w) * 20 / 1080) !important;
  background:rgba(0,0,0,0.490196) !important; /* 7D000000 */
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,0.686275) !important; /* AF000000 */
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  text-shadow:2px 2px 3px rgba(0,0,0,0.490196) !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-align:center !important;
}
/* In the opened map, B4A adds lblMapaLetrero to pnlContMapaJuego at y=0.
   Since our routeMapOverlay includes the visible menu band, put its y=0 just
   below that band. */
.routeMapOverlay .mapDestinationOverlayLabel{
  top:calc(var(--phone-h) * 115 / 1920) !important;
  left:15% !important;
  width:70% !important;
  z-index:80 !important;
}
/* In the initial 00.09 tutorial mask, keep it in the upper destination area but
   with the same marker-label width and style. */
.game.scene-00-09:not(.tutorialMapActive) .tutorial09DestinationInitial{
  top:12% !important;
  left:15% !important;
  width:70% !important;
  z-index:2400 !important;
}
.destinationTextOverlay .destinationCard{
  padding:0 !important;
}
.destinationTextOverlay .destinationTitle{
  font-size:calc(var(--phone-w) * 17 / 1080) !important;
}
.destinationTextOverlay .destinationPlace{
  font-size:calc(var(--phone-w) * 23 / 1080) !important;
}
.destinationTextOverlay .destinationAddress{
  font-size:calc(var(--phone-w) * 15 / 1080) !important;
}


.game.scene-00-09 .tutorialSceneBackdrop [data-layer-id="destination-text"]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}


.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel{
  top:12% !important;
  left:15% !important;
  width:70% !important;
  z-index:80 !important;
}

/* Keep the initial one readable under tutorial.1.png and below the hand/text. */
.game.scene-00-09:not(.tutorialMapActive) .tutorial09DestinationInitial{
  top:12% !important;
  left:15% !important;
  width:70% !important;
  z-index:2400 !important;
}


.legacyPanelTransition{
  opacity:var(--panel-tr-alpha-start,0) !important;
  transition-property:opacity !important;
  transition-timing-function:linear !important;
}
.legacyPanelTransition.visible{
  opacity:var(--panel-tr-alpha-final,1) !important;
}


[data-csd-animation="1"]{
  --csd-anim-duration: var(--csd-anim-duration, 250ms);
  --csd-anim-delay: var(--csd-anim-delay, 0ms);
}


[data-csd-alpha-animation="1"]{
  will-change:opacity;
}


[data-csd-transform-animation="1"],
[data-csd-rotation-animation="1"]{
  will-change:transform;
}


.game.destinationTravelScene .sceneRoot{
  background:#111 !important;
}
.destinationTravelMap{
  position:absolute !important;
  inset:0 !important;
  z-index:20 !important;
  background:#111 !important;
  overflow:hidden !important;
}
.destinationTravelMapFrame{
  z-index:1 !important;
}
.destinationTravelMap .destinationTravelCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard{
  top:12% !important;
  left:15% !important;
  width:70% !important;
  z-index:80 !important;
  visibility:visible !important;
  opacity:1 !important;
  display:block !important;
}
.game.destinationTravelScene .sceneRoot > .textLayer[data-layer-id^="destination-text"]{
  display:none !important;
}
.game.destinationTravelScene .topBar.legacyMenuBar{
  z-index:120 !important;
}


.destinationTravelMap .destinationTravelCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  z-index:80 !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
}
.destinationTravelMap .destinationTravelCard .destinationTitle{
  font-size:calc(var(--phone-w) * 22 / 1080) !important;
  margin-bottom:calc(var(--phone-h) * 7 / 1920) !important;
}
.destinationTravelMap .destinationTravelCard .destinationPlace{
  font-size:calc(var(--phone-w) * 30 / 1080) !important;
  line-height:1.13 !important;
}
.destinationTravelMap .destinationTravelCard .destinationAddress{
  font-size:calc(var(--phone-w) * 19 / 1080) !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}


.destinationTravelMap .destinationTravelCard .destinationTitle{
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  letter-spacing:.2px !important;
}
.destinationTravelMap .destinationTravelCard .destinationPlace{
  font-size:clamp(20px, calc(var(--phone-w) * 24 / 1080), 28px) !important;
  line-height:1.13 !important;
}
.destinationTravelMap .destinationTravelCard .destinationAddress{
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
}
.destinationTravelMap .destinationTravelCard .destinationCard{
  line-height:1.14 !important;
}
.game.scene-01-05 [data-layer-id="background-source"]{
  z-index:90 !important;
}
.game.scene-01-05 .postitCirclePiece{
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.55)) !important;
}


.game.scene-01-02 .legacyCsdMultiInputLayer,
.game.scene-01-03 .legacyCsdMultiInputLayer{
  z-index:2620 !important;
}
.game.scene-01-02 .legacyCsdMultiInputCell,
.game.scene-01-03 .legacyCsdMultiInputCell{
  border:0 !important;
  border-radius:0 !important;
  color:#fff !important;
  text-align:center !important;
  font-weight:700 !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
}
.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  outline:calc(var(--phone-w) * 4 / 1080) solid rgba(255,225,55,.95) !important;
  outline-offset:calc(var(--phone-w) * -3 / 1080) !important;
}
.game.scene-01-02.keyboardActive .contextButton,
.game.scene-01-03.keyboardActive .contextButton{
  bottom:20.8% !important;
}


.gameKeyboard.csdKeyboardExact{
  display:block !important;
  overflow:visible !important;
  transform:none !important;
}
.gameKeyboard.csdKeyboardExact .csdKeyboardKey{
  min-width:0 !important;
  min-height:0 !important;
  flex:none !important;
  border-style:solid !important;
  opacity:1 !important;
  overflow:hidden !important;
}
.game.scene-01-02 .gameKeyboard.csdKeyboardExact.numeric .csdKeyboardKey{
  font-size:clamp(18px, calc(var(--phone-w) * 30 / 1080), 30px) !important;
}
.game.scene-01-03 .gameKeyboard.csdKeyboardExact.alpha .csdKeyboardKey{
  font-size:clamp(17px, calc(var(--phone-w) * 29 / 1080), 29px) !important;
}


.game.scene-01-02 .gameKeyboard.numeric{
  position:absolute !important;
  left:0.9259259% !important;
  right:auto !important;
  bottom:1.1458333% !important;
  width:98.7962963% !important;
  height:6.1458333% !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  z-index:3000 !important;
}
.game.scene-01-02 .gameKeyboard.numeric > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11,minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.game.scene-01-02 .gameKeyboard.numeric > .gameKeyboardRow > .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.numeric > .gameKeyboardRow > .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  width:93.814433% !important;
  height:94.915254% !important;
  margin-left:1.031866% !important;
  margin-top:0.847458% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:0 !important;
  max-height:none !important;
  padding:0 !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.2509803922) !important;
  color:#fff !important;
  border:2px solid rgba(0,0,0,.3607843137) !important;
  box-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(12px,2.95vw,16px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.game.scene-01-03 .gameKeyboard.alpha{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:18.4375% !important;
  padding:0 !important;
  display:grid !important;
  grid-template-rows:repeat(3,minmax(0,1fr)) !important;
  gap:0 !important;
  row-gap:0 !important;
}
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow:nth-child(1),
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow:nth-child(2),
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow:nth-child(3){
  display:grid !important;
  grid-template-columns:repeat(10,minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.alpha > .gameKeyboardRow > .gameKeyboardSpacer{
  box-sizing:border-box !important;
  width:94.444444% !important;
  max-width:94.444444% !important;
  height:94.915254% !important;
  max-height:94.915254% !important;
  margin-left:0.925926% !important;
  margin-top:0.847458% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  border-radius:999px !important;
  aspect-ratio:auto !important;
}
.game.scene-01-03 .gameKeyboard.alpha .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}
.game.scene-01-03 .gameKeyboard.alpha .gameKeyboardKey{
  background:rgba(0,0,0,.2509803922) !important;
  color:#fff !important;
  border:2px solid rgba(0,0,0,.3607843137) !important;
  box-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(12px,2.95vw,16px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.game.scene-01-02 .legacyCsdMultiInputLayer,
.game.scene-01-03 .legacyCsdMultiInputLayer{
  transform:none !important;
}


.game .topBar,
.game .legacyMenuBar{
  z-index:10000 !important;
}
.game .sceneRoot{
  z-index:1 !important;
}

/* Menu-origin compensation for CSD inputs: B4A adds input labels to p0 while
   the menu remains visually above. This keeps the CSD internal spacing but
   places the group lower in the visible content area. */
.game.scene-01-02 .legacyCsdMultiInputLayer,
.game.scene-01-03 .legacyCsdMultiInputLayer{
  transform:translateY(calc(var(--phone-h) * 135 / 1920)) !important;
  z-index:2620 !important;
}

/* Active input border: B4A creates a separate InputBorde label. We reproduce the
   visual result on the active cell: translucent white fill + red 6px outline. */
.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  outline:calc(var(--phone-w) * 6 / 1080) solid #ff0000 !important;
  outline-offset:0 !important;
  background:rgba(255,255,255,.125) !important;
  box-shadow:0 0 calc(var(--phone-w) * 9 / 1080) rgba(255,0,0,.65) !important;
  z-index:120 !important;
}

/* Keep the 01.03 speech/text under the menu and away from grapes/top bar. */
.game.scene-01-03 [data-layer-id="text-1"]{
  top:calc(4% + (var(--phone-h) * 96 / 1920)) !important;
  left:8% !important;
  width:84% !important;
  z-index:230 !important;
}

/* Shared circular key style. */
.gameKeyboard.legacyKeyboard{
  position:absolute !important;
  left:4% !important;
  right:auto !important;
  bottom:2.1% !important;
  width:92% !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  z-index:7000 !important;
  pointer-events:auto !important;
  display:grid !important;
  overflow:visible !important;
}
.gameKeyboard.legacyKeyboard .gameKeyboardRow{
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  justify-items:center !important;
  align-items:center !important;
}
.gameKeyboard.legacyKeyboard .gameKeyboardKey,
.gameKeyboard.legacyKeyboard .gameKeyboardKey.deleteKey,
.gameKeyboard.legacyKeyboard .gameKeyboardSpacer{
  box-sizing:border-box !important;
  aspect-ratio:1 / 1 !important;
  width:min(92%, calc(var(--phone-w) * 54 / 1080)) !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:50% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.gameKeyboard.legacyKeyboard .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}
.gameKeyboard.legacyKeyboard .gameKeyboardKey{
  background:rgba(0,0,0,.2509803922) !important;
  border:calc(var(--phone-w) * 3 / 1080) solid rgba(0,0,0,.3607843137) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:0 1px 2px rgba(0,0,0,.55) !important;
  font-family:CE_Roboto, Roboto, Arial, sans-serif !important;
  font-weight:700 !important;
  line-height:1 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 30 / 1080), 18px) !important;
}

/* Numeric type 1: one row, with the good margins seen in 01.02 but circular keys. */
.gameKeyboard.legacyKeyboard.numeric{
  height:calc(var(--phone-w) * 58 / 1080) !important;
  grid-template-rows:1fr !important;
}
.gameKeyboard.legacyKeyboard.numeric .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0,1fr)) !important;
}
.gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey.deleteKey{
  width:min(86%, calc(var(--phone-w) * 48 / 1080)) !important;
}

/* Alpha type 2: three rows with side margins, not glued to the screen edge. */
.gameKeyboard.legacyKeyboard.alpha{
  height:18.4% !important;
  grid-template-rows:repeat(3, 1fr) !important;
  row-gap:calc(var(--phone-h) * 5 / 1920) !important;
}
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(10, minmax(0,1fr)) !important;
}
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey.deleteKey,
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardSpacer{
  width:min(88%, calc(var(--phone-w) * 50 / 1080)) !important;
}

/* Remove leftover exact-keyboard experiment from 189/190 if an older cache emits it. */
.gameKeyboard.csdKeyboardExact{
  display:none !important;
}


.gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey.deleteKey{
  width:clamp(30px, calc(var(--phone-w) * 84 / 1080), 46px) !important;
  height:clamp(30px, calc(var(--phone-w) * 84 / 1080), 46px) !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
}
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey.deleteKey,
.gameKeyboard.legacyKeyboard.alpha .gameKeyboardSpacer{
  width:clamp(36px, calc(var(--phone-w) * 88 / 1080), 50px) !important;
  height:clamp(36px, calc(var(--phone-w) * 88 / 1080), 50px) !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
}

/* Input placement corrections after user visual pass.
   01.02: CSD top spacing between cells is right, but visible origin needs lower
   placement on the background drawing.
   01.03: previous menu-origin compensation pushed the cells too low into the
   brain button; return to CSD vertical placement. */
.game.scene-01-02 .legacyCsdMultiInputLayer{
  transform:translateY(calc(var(--phone-h) * 190 / 1920)) !important;
  z-index:2620 !important;
}
.game.scene-01-03 .legacyCsdMultiInputLayer{
  transform:none !important;
  z-index:2620 !important;
}

/* Active input border exactness.
   B4A fallback uses Colors.ARGB(32,255,255,255) for the fill, which is alpha
   32/255 = 0.125. The red border itself is Colors.red, fully opaque. */
.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  background:rgba(255,255,255,0.125) !important;
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,1) !important;
  outline-offset:0 !important;
  box-shadow:none !important;
  z-index:120 !important;
}

/* 01.03 top speech: keep it below the menu/grapes without shifting the menu
   hierarchy. */
.game.scene-01-03 [data-layer-id="text-1"]{
  top:calc(4% + (var(--phone-h) * 175 / 1920)) !important;
  left:8% !important;
  width:84% !important;
  z-index:230 !important;
}

/* Result/error panel: original behaviour is a bottom sheet/folder that rises
   only as much as needed to read the CSD Resultado.Texto, not an invented full
   screen message. */
.legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:rgba(0,0,0,0.18) !important;
}
.legacyResultSheet{
  position:absolute !important;
  left:4% !important;
  right:4% !important;
  bottom:0 !important;
  width:92% !important;
  min-height:auto !important;
  max-height:38% !important;
  padding:calc(var(--phone-h) * 28 / 1920) calc(var(--phone-w) * 28 / 1080) calc(var(--phone-h) * 42 / 1920) !important;
  transform:translateY(105%) !important;
  transition:transform 250ms ease-out !important;
  border-radius:calc(var(--phone-w) * 38 / 1080) calc(var(--phone-w) * 38 / 1080) 0 0 !important;
  background:rgba(238,190,136,.96) !important;
  border:calc(var(--phone-w) * 3 / 1080) solid rgba(87,36,135,.78) !important;
  box-shadow:0 calc(var(--phone-h) * -6 / 1920) calc(var(--phone-w) * 18 / 1080) rgba(0,0,0,.32) !important;
}
.legacyResultBox{
  color:#572487 !important;
  font-family:CE_AppCanted, CE_CantedComic, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
  font-size:clamp(18px, calc(var(--phone-w) * 36 / 1080), 26px) !important;
  line-height:1.15 !important;
  text-align:center !important;
  text-shadow:none !important;
  max-height:100% !important;
  overflow:hidden !important;
}


/* Force real circles: square physical box + border radius + clip-path. */
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha .gameKeyboardKey.deleteKey{
  --ce-key-size:clamp(34px, calc(var(--phone-w) * 78 / 1080), 46px);
  width:var(--ce-key-size) !important;
  height:var(--ce-key-size) !important;
  inline-size:var(--ce-key-size) !important;
  block-size:var(--ce-key-size) !important;
  min-width:var(--ce-key-size) !important;
  min-height:var(--ce-key-size) !important;
  max-width:var(--ce-key-size) !important;
  max-height:var(--ce-key-size) !important;
  aspect-ratio:1 / 1 !important;
  border-radius:9999px !important;
  clip-path:circle(50% at 50% 50%) !important;
  place-self:center !important;
  flex:0 0 var(--ce-key-size) !important;
}


.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric{
  left:4% !important;
  width:92% !important;
  bottom:2.35% !important;
}

/* Alpha keyboard needs side margin; it must not touch left/right screen edges. */
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha{
  left:6% !important;
  width:88% !important;
  right:auto !important;
  bottom:1.6% !important;
}
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha .gameKeyboardRow{
  grid-template-columns:repeat(10, minmax(0, 1fr)) !important;
}

/* Active input border: not opaque. The B4A fallback fill is alpha 32/255.
   User also confirmed the red frame should let the background show through,
   so the red stroke is now semi-transparent rather than solid. */
.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  background:rgba(255,255,255,0.125) !important;
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,0.62) !important;
  border-color:rgba(255,0,0,0.62) !important;
  box-shadow:none !important;
}


.game.scene-01-03 [data-layer-id="graphic-1"]{
  transform:translateY(calc(var(--phone-h) * -34 / 1920)) !important;
}
.game.scene-01-03 .legacyCsdMultiInputLayer{
  transform:translateY(calc(var(--phone-h) * 32 / 1920)) !important;
}

/* Do not move the accepted 01.03 text box in this stage. */


/* 1) Active input: only the red translucent frame.
   B4A fallback had transparent fill available, but user specifically requests
   the focus element as a transparent frame only. */
.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  background:transparent !important;
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,0.55) !important;
  border-color:rgba(255,0,0,0.55) !important;
  box-shadow:none !important;
  z-index:120 !important;
}

/* 2) Numeric keyboard: same horizontal footprint and spacing as the accepted
   oval version, but each key is square/circular. The grid columns are unchanged:
   left=4%, width=92%, 11 equal columns. */
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric{
  left:4% !important;
  width:92% !important;
  bottom:2.35% !important;
  height:calc(var(--phone-w) * 0.07847) !important; /* 92% / 11 * previous 93.814433% */
  display:grid !important;
  grid-template-rows:1fr !important;
  overflow:visible !important;
}
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  justify-items:center !important;
  align-items:center !important;
}
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey.deleteKey{
  width:calc(var(--phone-w) * 0.07847) !important;
  height:calc(var(--phone-w) * 0.07847) !important;
  min-width:calc(var(--phone-w) * 0.07847) !important;
  min-height:calc(var(--phone-w) * 0.07847) !important;
  max-width:calc(var(--phone-w) * 0.07847) !important;
  max-height:calc(var(--phone-w) * 0.07847) !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  clip-path:circle(50% at 50% 50%) !important;
  place-self:center !important;
  margin:0 !important;
  padding:0 !important;
}


.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha{
  left:6% !important;
  width:88% !important;
  right:auto !important;
}

/* 3) Error result: folder panel from bottom. */
.legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:transparent !important;
  pointer-events:auto !important;
}
.legacyResultSheet{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  min-height:calc(var(--phone-h) * 120 / 1920) !important;
  max-height:calc(var(--phone-h) * 300 / 1920) !important;
  height:auto !important;
  padding:calc(var(--phone-h) * 28 / 1920) calc(var(--phone-w) * 34 / 1080) calc(var(--phone-h) * 34 / 1920) !important;
  transform:translateY(105%) !important;
  transition:transform 250ms ease-out !important;
  background-image:url('../assets/fondo.resultado.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  background-color:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:hidden !important;
}
.legacyResultSheet.closing{
  transform:translateY(105%) !important;
}
.legacyResultBox{
  display:block !important;
  width:100% !important;
  color:#572487 !important;
  font-family:CE_CantedComic, CE_LocalCanted, CE_Roboto, sans-serif !important;
  font-size:clamp(18px, calc(var(--phone-w) * 39 / 1080), 27px) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-transform:uppercase !important;
  text-shadow:none !important;
  margin:0 auto !important;
  padding:0 calc(var(--phone-w) * 18 / 1080) !important;
  max-height:calc(var(--phone-h) * 210 / 1920) !important;
  overflow:hidden !important;
}


/* Active frame: outline only, no fill and no invented glow. */
.game.scene-01-02 .legacyCsdMultiInputCell.active{
  background:transparent !important;
  border:0 !important;
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,0.55) !important;
  outline-offset:calc(var(--phone-w) * -2 / 1080) !important;
  box-shadow:none !important;
}

/* Numeric keyboard type 1: one CSD row, 11 equal cells, same accepted 4%/92%
   horizontal footprint; key height is raised to match key width. */
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric{
  left:4% !important;
  right:auto !important;
  width:92% !important;
  bottom:2.35% !important;
  height:calc(var(--phone-w) * 0.07847) !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:1fr !important;
  align-items:center !important;
  justify-items:stretch !important;
  overflow:visible !important;
}
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0, 1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:center !important;
  justify-items:center !important;
}
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric .gameKeyboardKey.deleteKey{
  --ce-0102-key-size:calc(var(--phone-w) * 0.07847);
  width:var(--ce-0102-key-size) !important;
  height:var(--ce-0102-key-size) !important;
  min-width:var(--ce-0102-key-size) !important;
  min-height:var(--ce-0102-key-size) !important;
  max-width:var(--ce-0102-key-size) !important;
  max-height:var(--ce-0102-key-size) !important;
  aspect-ratio:1 / 1 !important;
  border-radius:50% !important;
  clip-path:circle(50% at 50% 50%) !important;
  margin:0 !important;
  padding:0 !important;
  place-self:center !important;
}

/* Bottom result folder: preserve the existing CSD text casing; no invented uppercase. */
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  text-transform:none !important;
}


.gameKeyboard.legacyKeyboard.csdConfigKeyboard,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  position:absolute !important;
  left:var(--csd-keyboard-left) !important;
  top:var(--csd-keyboard-top) !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--csd-keyboard-width) !important;
  height:var(--csd-keyboard-height) !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  overflow:visible !important;
  z-index:3000 !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.numeric,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard{
  grid-template-rows:1fr !important;
  row-gap:0 !important;
  gap:0 !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  grid-template-rows:repeat(3, minmax(0, 1fr)) !important;
  row-gap:0 !important;
  gap:0 !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(1),
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(2),
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(3){
  display:grid !important;
  grid-template-columns:repeat(var(--key-count), minmax(0, 1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
  align-items:stretch !important;
  justify-items:stretch !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey.spaceKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardSpacer{
  box-sizing:border-box !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  inline-size:auto !important;
  block-size:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  flex:none !important;
  grid-column:auto !important;
  aspect-ratio:auto !important;
  margin:0 !important;
  padding:0 !important;
  place-self:stretch !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:var(--csd-key-radius) !important;
  clip-path:none !important;
  background:var(--csd-key-fill) !important;
  color:rgba(255,255,255,1) !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font-family:CE_Roboto, sans-serif !important;
  font-weight:700 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 20 / 1080), 22px) !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey:active{
  transform:none !important;
  filter:brightness(1.16) !important;
}


.gameKeyboard.legacyKeyboard.csdConfigKeyboard,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  position:absolute !important;
  left:var(--csd-keyboard-left) !important;
  top:var(--csd-keyboard-top) !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--csd-keyboard-width) !important;
  height:var(--csd-keyboard-height) !important;
  padding:0 !important;
  margin:0 !important;
  display:grid !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  z-index:3000 !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.numeric,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard{
  grid-template-rows:1fr !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  grid-template-rows:repeat(3, minmax(0,1fr)) !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(1),
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(2),
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow:nth-child(3){
  display:grid !important;
  grid-template-rows:1fr !important;
  grid-template-columns:repeat(var(--key-count), minmax(0,1fr)) !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
}
/* Type 1: !!config.csd W=1067 H=118, row 1234567890^.
   B4A splits into 11 cells. The visible key keeps the established inner margin
   from the earlier CSD/B4A audit, so it is circular and not glued to neighbours. */
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.numeric .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.numeric .gameKeyboardKey.deleteKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  width:93.814433% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:93.814433% !important;
  max-height:none !important;
  margin-left:1.030928% !important;
  margin-top:0.847458% !important;
  padding:0 !important;
  grid-column:auto !important;
  place-self:center !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  clip-path:none !important;
  background:var(--csd-key-fill) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-weight:400 !important;
  font-size:clamp(12px, calc(var(--phone-w) * 20 / 1080), 22px) !important;
  line-height:1 !important;
  cursor:pointer !important;
}
/* Type 2: verified 10-column grid: QWERTYUIOP / ASDFGHJKLÑ / ·ZXCVBNM^·.
   Spacer cells occupy real grid columns but remain invisible. */
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha .gameKeyboardKey.deleteKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha .gameKeyboardSpacer,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardSpacer{
  box-sizing:border-box !important;
  width:94.444444% !important;
  height:94.915254% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:94.444444% !important;
  max-height:94.915254% !important;
  aspect-ratio:auto !important;
  margin-left:0.925926% !important;
  margin-top:0.847458% !important;
  padding:0 !important;
  grid-column:auto !important;
  place-self:start !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  clip-path:none !important;
  background:var(--csd-key-fill) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-weight:400 !important;
  font-size:clamp(12px, calc(var(--phone-w) * 20 / 1080), 22px) !important;
  line-height:1 !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard.alpha .gameKeyboardSpacer,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey:active{
  transform:scale(.8) !important;
  filter:none !important;
}


.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,0.55) !important;
  outline-offset:0 !important;
  background:var(--legacy-cell-bg, rgba(0,0,0,0.2509803922)) !important;
  box-shadow:none !important;
  z-index:120 !important;
}

.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard > .gameKeyboardRow{
  align-items:center !important;
  justify-items:center !important;
}

/* 01.02: one CSD row (1234567890^) with circular visible keys.
   Keep the container geometry from !!config.csd (L=10, W=1067), and centre a
   square key inside each of the 11 B4A cells so the whole row retains outer
   margins on both sides. */
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  width:88% !important;
  max-width:88% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  place-self:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  background:var(--csd-key-fill) !important;
  clip-path:none !important;
}

/* 01.03: 10-column grid with visible side breathing room.
   All visible keys stay the same size; spacer cells remain real but invisible.
   Use a slightly narrower width and a taller height so the keys read as the
   more vertical ovals remembered by the user. */
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardSpacer{
  width:88% !important;
  max-width:88% !important;
  height:94% !important;
  max-height:94% !important;
  aspect-ratio:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  place-self:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  background:var(--csd-key-fill) !important;
  clip-path:none !important;
}

.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardSpacer{
  visibility:hidden !important;
  pointer-events:none !important;
}


.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  width:88% !important;
  max-width:88% !important;
  height:94% !important;
  max-height:94% !important;
  aspect-ratio:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  place-self:center !important;
  border-radius:999px !important;
}

.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard{
  transform:translateY(calc(var(--phone-w) * -8 / 1080)) !important;
}


.game.scene-01-02 .legacyCsdMultiInputCell.active,
.game.scene-01-03 .legacyCsdMultiInputCell.active{
  outline:max(4px, calc(var(--phone-w) * 10 / 1080)) solid rgba(255,0,0,0.68) !important;
  outline-offset:0 !important;
  background:var(--legacy-cell-bg, rgba(0,0,0,0.2509803922)) !important;
  box-shadow:none !important;
}

.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey,
.gameKeyboard.legacyKeyboard.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey,
.game.scene-01-03 .gameKeyboard.legacyKeyboard.alpha.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  font-size:clamp(18px, calc(var(--phone-w) * 48 / 1080), 26px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}

.legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:transparent !important;
  display:block !important;
  padding:0 !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  opacity:1 !important;
  transition:opacity 250ms linear !important;
}
.legacyResultSheet{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  width:100% !important;
  height:var(--result-visible-height, calc(var(--phone-h) * 230 / 1920)) !important;
  min-height:calc(var(--phone-h) * 165 / 1920) !important;
  max-height:calc(var(--phone-h) * 430 / 1920) !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-h) * 36 / 1920) calc(var(--phone-w) * 46 / 1080) calc(var(--phone-h) * 48 / 1920) !important;
  margin:0 !important;
  transform:translateY(calc(100% + 2px)) !important;
  transition:transform 250ms ease-out !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  pointer-events:auto !important;
}
.legacyResultSheet::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background-image:url('../assets/fondo.resultado.png') !important;
  background-size:100% auto !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  pointer-events:none !important;
  z-index:0 !important;
}
.legacyResultSheet.visible{
  transform:translateY(0) !important;
}
.legacyResultSheet.closing{
  transform:translateY(calc(100% + 2px)) !important;
}
.legacyResultBox,
.legacyResultSheet .legacyResultBox,
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  position:relative !important;
  z-index:1 !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:100% !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:0 calc(var(--phone-w) * 18 / 1080) !important;
  box-sizing:border-box !important;
  background:transparent !important;
  border:0 !important;
  color:#572487 !important;
  font-family:CE_CantedComic, CE_LocalCanted, CE_Roboto, sans-serif !important;
  font-size:clamp(19px, calc(var(--phone-w) * 42 / 1080), 30px) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-transform:none !important;
  text-shadow:none !important;
  transform:rotate(1.3deg) !important;
  overflow:visible !important;
}


.legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:transparent !important;
  overflow:hidden !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  opacity:1 !important;
  transition:none !important;
}
.legacyResultOverlay.originalResultPanel.closing{
  opacity:1 !important;
}
.legacyResultSheet{
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:0 !important;
  width:calc(var(--phone-w) * 740 / 1080) !important;
  height:calc(var(--phone-w) * 1140 / 1080) !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  box-sizing:border-box !important;
  padding:0 !important;
  margin:0 !important;
  transform:translate(-50%, 100%) !important;
  transition:transform 250ms ease-in-out !important;
  background-image:url('../assets/fondo.resultado.png') !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  background-size:100% 100% !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
  display:block !important;
  pointer-events:auto !important;
}
.legacyResultSheet.visible{
  transform:translate(-50%, calc(100% - var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)))) !important;
}
.legacyResultSheet.closing{
  transform:translate(-50%, 100%) !important;
}
.legacyResultBox,
.legacyResultSheet .legacyResultBox,
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  position:absolute !important;
  left:10% !important;
  bottom:calc(var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)) * .26) !important;
  width:80% !important;
  height:auto !important;
  max-height:calc(var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)) * .62) !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 calc(var(--phone-w) * 18 / 1080) !important;
  box-sizing:border-box !important;
  background:transparent !important;
  border:0 !important;
  color:#572487 !important;
  font-family:CE_CantedComic, CE_LocalCanted, CE_Roboto, sans-serif !important;
  font-size:clamp(19px, calc(var(--phone-w) * 42 / 1080), 30px) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-transform:none !important;
  text-shadow:none !important;
  transform:rotate(1.3deg) !important;
  overflow:visible !important;
  z-index:1 !important;
}


.legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  overflow:hidden !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  background:rgba(0,0,0,.50) !important;
  opacity:1 !important;
  transition:opacity 250ms linear !important;
}
.legacyResultOverlay.originalResultPanel.closing{
  opacity:0 !important;
}
.legacyResultSheet{
  position:absolute !important;
  left:5% !important;
  right:auto !important;
  top:auto !important;
  bottom:0 !important;
  width:90% !important;
  height:auto !important;
  aspect-ratio:740 / 1140 !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  box-sizing:border-box !important;
  padding:0 !important;
  margin:0 !important;
  transform:translateY(100%) !important;
  transition:transform 250ms ease-in-out !important;
  background-image:url('../assets/fondo.resultado.png') !important;
  background-repeat:no-repeat !important;
  background-position:center bottom !important;
  background-size:100% 100% !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
  display:block !important;
  pointer-events:auto !important;
}
.legacyResultSheet.visible{
  transform:translateY(calc(100% - var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)))) !important;
}
.legacyResultSheet.closing{
  transform:translateY(100%) !important;
}
.legacyResultSheet::before{
  content:none !important;
  display:none !important;
}
.legacyResultSheet .legacyResultBox,
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  position:absolute !important;
  left:10% !important;
  bottom:calc(var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)) * .28) !important;
  width:80% !important;
  height:auto !important;
  max-height:calc(var(--result-visible-height, calc(var(--phone-h) * 255 / 1920)) * .58) !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 calc(var(--phone-w) * 18 / 1080) !important;
  box-sizing:border-box !important;
  background:transparent !important;
  border:0 !important;
  color:#572487 !important;
  font-family:CE_CantedComic, CE_LocalCanted, CE_Roboto, sans-serif !important;
  font-size:clamp(19px, calc(var(--phone-w) * 42 / 1080), 30px) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-transform:none !important;
  text-shadow:none !important;
  transform:rotate(1.3deg) !important;
  overflow:visible !important;
  z-index:1 !important;
}


.game.resultPanelOpen #contextButton{
  pointer-events:none !important;
}
.legacyResultOverlay.originalResultPanel{
  z-index:30000 !important;
  pointer-events:auto !important;
}
.legacyResultSheet{
  z-index:30001 !important;
}
.legacyResultSheet.visible{
  transform:translateY(calc(100% - var(--result-visible-height, calc(var(--phone-h) * 295 / 1920)))) !important;
}
.legacyResultSheet .legacyResultBox,
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  bottom:calc(var(--result-visible-height, calc(var(--phone-h) * 295 / 1920)) * .32) !important;
}


.game.resultPanelOpen #contextButton,
.game.resultPanelOpen .contextButton{
  pointer-events:none !important;
}
.game > .legacyResultOverlay.originalResultPanel{
  position:absolute !important;
  inset:0 !important;
  z-index:30000 !important;
  pointer-events:auto !important;
}
.game > .legacyResultOverlay.originalResultPanel .legacyResultSheet{
  z-index:30001 !important;
}


body .hintAuditPanel{
  position:fixed !important;
  left:14px !important;
  top:82px !important;
  bottom:14px !important;
  width:300px !important;
  z-index:8800 !important;
  overflow:auto !important;
  padding:12px !important;
  border-radius:14px !important;
  border:1px solid rgba(255,214,124,.36) !important;
  background:rgba(10,8,6,.90) !important;
  color:#f8e7bf !important;
  box-shadow:0 14px 34px rgba(0,0,0,.48) !important;
  font:12px/1.35 CE_Roboto, system-ui, sans-serif !important;
  pointer-events:auto !important;
}
body .hintAuditPanel h2{
  margin:0 0 9px !important;
  color:#ffd58a !important;
  font:900 15px/1.1 CE_RobotoBold, CE_Roboto, sans-serif !important;
}
body .hintAuditPanel p{margin:6px 0 !important;}
body .hintAuditPanel code{color:#ffe5a0 !important;white-space:normal !important;}
body .hintAuditPanel ol{list-style:none !important;padding:0 !important;margin:10px 0 0 !important;display:flex !important;flex-direction:column !important;gap:8px !important;}
body .hintAuditPanel li{padding:8px !important;border-radius:10px !important;border:1px solid rgba(255,214,124,.24) !important;background:rgba(0,0,0,.24) !important;}
body .hintAuditPanel li.available{border-color:rgba(116,255,146,.65) !important;background:rgba(26,88,38,.28) !important;}
body .hintAuditPanel li.viewed{box-shadow:inset 4px 0 0 rgba(116,176,255,.85) !important;}
body .hintAuditPanel .hintAuditStatus{margin:5px 0 !important;color:#b9d7ff !important;font-size:11px !important;}
body .hintAuditPanel .hintAuditText{margin-top:6px !important;color:#fff7df !important;}
@media (max-width: 1180px){
  body .hintAuditPanel{transform:scale(.88) !important;transform-origin:top left !important;}
}


.game.scene-00-09.tutorialMapActive > .tutorialMapMenuClone{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:calc(100% * 272 / 1920) !important;
  z-index:6500 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
  background-image:url('../assets/fondo.menu.png') !important;
  background-position:0 0 !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapMenuClone .topIcon,
.game.scene-00-09.tutorialMapActive > .tutorialMapMenuClone .legacyPercent{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}
.game.scene-00-09.tutorialMapActive > .tutorialMapMenuClone .topIcon img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
}
.game.scene-00-09.tutorialMapActive > .ceMapTutorialPrompt{
  z-index:9000 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay.tutorialRouteMap,
.game.scene-00-09.tutorialMapActive .routeMapOverlay.menuVisibleTutorialMap{
  z-index:3000 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.visible{
  top:12% !important;
  left:15% !important;
  width:70% !important;
  z-index:120 !important;
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationTitle,
.game.scene-00-09 .tutorial09DestinationInitial .destinationTitle{
  font-size:calc(var(--phone-w) * 21 / 1080) !important;
  line-height:1.1 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationPlace,
.game.scene-00-09 .tutorial09DestinationInitial .destinationPlace{
  font-size:calc(var(--phone-w) * 30 / 1080) !important;
  line-height:1.14 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationAddress,
.game.scene-00-09 .tutorial09DestinationInitial .destinationAddress{
  font-size:calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.1 !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay.tutorialHintsOverlay00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background:transparent !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsShade00_13{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  background-image:url('../assets/tutorial.top.png') !important;
  background-size:100% 100% !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  opacity:.6 !important;
  pointer-events:auto !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTopText00_13.replaceInitialText00_13{
  display:block !important;
  position:absolute !important;
  left:10% !important;
  top:30% !important;
  width:80% !important;
  height:auto !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 54 / 1080) !important;
  line-height:1.06 !important;
  color:#fff !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:0 2px 2px rgba(0,0,0,.8) !important;
  z-index:7 !important;
  pointer-events:none !important;
}
.game .topBar .topIcon.hint img{
  transform-origin:center center !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay{
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background:transparent !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsShade00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTopText00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay .replaceInitialText00_13{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsViewport00_13{
  position:absolute !important;
  left:0 !important;
  top:calc(var(--phone-h) * 150 / 1920) !important;
  width:100% !important;
  height:calc(var(--phone-h) * 1770 / 1920) !important;
  z-index:2 !important;
  overflow:hidden !important;
  pointer-events:auto !important;
  touch-action:pan-y !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  height:100% !important;
  display:flex !important;
  transition:transform 250ms ease-in-out !important;
  align-items:stretch !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  position:relative !important;
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:calc(var(--phone-h) * 420 / 1920) !important;
  max-height:calc(var(--phone-h) * 1050 / 1920) !important;
  background:none !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPagination00_13{
  position:absolute !important;
  left:calc(100% * 125 / 1080) !important;
  top:calc(var(--phone-h) * 84 / 1920) !important;
  width:calc(100% * 955 / 1080) !important;
  height:calc(var(--phone-w) * 70 / 1080) !important;
  z-index:3 !important;
  display:flex !important;
  gap:calc(var(--phone-w) * 18 / 1080) !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPageDot00_13{
  display:inline-block !important;
  width:calc(var(--phone-w) * 38 / 1080) !important;
  height:calc(var(--phone-w) * 38 / 1080) !important;
  border:calc(var(--phone-w) * 5 / 1080) solid #25170e !important;
  border-radius:50% !important;
  background:transparent !important;
  box-sizing:border-box !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPageDot00_13.current{
  background:#25170e !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:calc(var(--phone-h) * 190 / 1920) !important;
  width:80% !important;
  z-index:2 !important;
  font-family:CE_LocalJar,cursive !important;
  font-size:calc(var(--phone-w) * 64 / 1080) !important;
  line-height:1.04 !important;
  color:#25170e !important;
  text-align:center !important;
  transform:rotate(-4deg) !important;
  transform-origin:center center !important;
  text-shadow:none !important;
  pointer-events:none !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse00_13 500ms ease-in-out 2 !important;
  transform-origin:center center !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsViewport00_13{
  top:0 !important;
  height:100% !important;
  overflow:hidden !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  height:100% !important;
  align-items:flex-start !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  align-self:flex-start !important;
  height:var(--hint-visible-height, calc(var(--phone-h) * 520 / 1920)) !important;
  min-height:0 !important;
  max-height:100% !important;
  margin-top:var(--csd-hint-sheet-margin-top, calc(var(--phone-h) * 1400 / 1920)) !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay.opening .tutorialHintSheet00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay.closing .tutorialHintSheet00_13{
  transform:translateY(calc(var(--phone-h) * 1920 / 1920)) !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheetInner00_13{
  height:100% !important;
  min-height:calc(var(--phone-h) * 520 / 1920) !important;
  background-size:100% 100% !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 84 / 1920) !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse216 520ms ease-in-out 2 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 16 / 1080) rgba(255,238,72,.95)) !important;
}
.csdHintPulseClone216{
  position:absolute !important;
  z-index:90000 !important;
  pointer-events:none !important;
  object-fit:contain !important;
  transform-origin:center center !important;
  animation:ceHintReadyPulse216 520ms ease-in-out 2 !important;
  filter:drop-shadow(0 0 14px rgba(255,244,77,.98)) !important;
}
@keyframes ceHintReadyPulse216{
  45%{transform:scale(1.28);opacity:1;}
  70%{transform:scale(.95);opacity:.96;}
}
body .hintAuditPanel li.pending .hintAuditStatus{
  color:#ffd881 !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  height:100% !important;
  align-items:stretch !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  position:relative !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  min-height:0 !important;
  max-height:none !important;
  margin-top:calc(var(--phone-h) * 620 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:0 0 !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheetInner00_13{
  position:absolute !important;
  inset:0 !important;
  height:100% !important;
  min-height:0 !important;
  background:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 75 / 1920) !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintText00_13{
  top:calc(var(--phone-h) * 190 / 1920) !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse217 420ms ease-out 1 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 7 / 1080) rgba(255,238,72,.72)) !important;
}
.csdHintPulseClone216{display:none !important;}
@keyframes ceHintReadyPulse217{
  0%,100%{transform:scale(1);opacity:1;}
  48%{transform:scale(1.105);opacity:1;}
  72%{transform:scale(.985);opacity:.98;}
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  height:100% !important;
  display:flex !important;
  align-items:stretch !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  position:relative !important;
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:calc(var(--phone-h) * 420 / 1920) !important;
  max-height:calc(var(--phone-h) * 1050 / 1920) !important;
  margin-top:var(--csd-hint-sheet-margin-top, calc(var(--phone-h) * 1320 / 1920)) !important;
  background-image:none !important;
  background:none !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheetInner00_13{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  min-height:0 !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:top center !important;
  pointer-events:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 84 / 1920) !important;
  left:calc(100% * 125 / 1080) !important;
  gap:calc(var(--phone-w) * 18 / 1080) !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPageDot00_13{
  width:calc(var(--phone-w) * 38 / 1080) !important;
  height:calc(var(--phone-w) * 38 / 1080) !important;
  border-width:calc(var(--phone-w) * 5 / 1080) !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse218 760ms cubic-bezier(.2,.82,.2,1) 1 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 6 / 1080) rgba(255,238,72,.66)) !important;
}
@keyframes ceHintReadyPulse218{
  22%{transform:scale(1.08);opacity:1;}
  38%{transform:scale(.995);opacity:1;}
  58%{transform:scale(1.045);opacity:1;}
  76%{transform:scale(1);opacity:.99;}
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsViewport00_13{
  top:calc(var(--phone-h) * 150 / 1920) !important;
  height:calc(var(--phone-h) * 1770 / 1920) !important;
  overflow:hidden !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  height:100% !important;
  display:flex !important;
  align-items:flex-start !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  position:relative !important;
  align-self:flex-start !important;
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:0 !important;
  max-height:calc(var(--phone-h) * 1050 / 1920) !important;
  margin-top:var(--csd-hint-sheet-margin-top, calc(var(--phone-h) * 1320 / 1920)) !important;
  background:none !important;
  overflow:hidden !important;
  transform:translateY(0) !important;
  transition:transform 250ms ease-in-out !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay.opening .tutorialHintSheet00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay.closing .tutorialHintSheet00_13{
  transform:translateY(calc(var(--phone-h) * 1770 / 1920)) !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheetInner00_13{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-repeat:no-repeat !important;
  background-position:top center !important;
  pointer-events:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintPagination00_13{
  top:calc(var(--phone-h) * 84 / 1920) !important;
  left:calc(100% * 125 / 1080) !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintText00_13{
  top:calc(var(--phone-h) * 190 / 1920) !important;
  font-size:calc(var(--phone-w) * 64 / 1080) !important;
  line-height:1.04 !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse219 620ms cubic-bezier(.2,.85,.2,1) 1 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 7 / 1080) rgba(255,238,72,.7)) !important;
}
@keyframes ceHintReadyPulse219{
  44%{transform:scale(1.13);opacity:1;}
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  align-items:flex-start !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13{
  align-self:flex-start !important;
  height:var(--hint-visible-height, calc(var(--phone-h) * 560 / 1920)) !important;
  min-height:0 !important;
  max-height:calc(var(--phone-h) * 1050 / 1920) !important;
  margin-top:var(--csd-hint-sheet-margin-top, calc(var(--phone-h) * 1320 / 1920)) !important;
  background:none !important;
  overflow:hidden !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheetInner00_13{
  height:calc(var(--phone-h) * 1870 / 1920) !important;
  background-image:url('../assets/fondo.pistas.png') !important;
  background-size:100% 100% !important;
  background-position:top center !important;
  background-repeat:no-repeat !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintText00_13{
  position:absolute !important;
  left:10% !important;
  top:calc(var(--phone-h) * 190 / 1920) !important;
  width:80% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:visible !important;
  padding:0 !important;
  margin:0 !important;
  font-size:calc(var(--phone-w) * 64 / 1080) !important;
  line-height:1.04 !important;
  white-space:normal !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse220 640ms ease-in-out 1 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 8 / 1080) rgba(255,238,72,.72)) !important;
}
@keyframes ceHintReadyPulse220{
  0%{transform:scale(1);opacity:1;}
  45%{transform:scale(1.14);opacity:1;}
  100%{transform:scale(1);opacity:1;}
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay{
  background:transparent !important;
  pointer-events:auto !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .csdRuntimeHintsBlockingShade{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:rgba(0,0,0,.46) !important;
  pointer-events:auto !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsViewport00_13{
  z-index:2 !important;
  pointer-events:auto !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .csdRuntimeHintsBlockingShade{
  background:rgba(0,0,0,.46) !important;
  opacity:1 !important;
  transition:opacity 150ms ease-out !important;
  will-change:opacity !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay.opening .csdRuntimeHintsBlockingShade,
.game.csdHintsRuntime .csdRuntimeHintsOverlay.closing .csdRuntimeHintsBlockingShade{
  opacity:0 !important;
}
.game .topBar .topIcon.hint.csdHintPulseNow,
.game .topBar .topIcon.hint.csdHintPulseNow img,
.game .topBar .topIcon.hint img.csdHintPulseNow{
  animation:ceHintReadyPulse223 780ms cubic-bezier(.25,.8,.25,1) 1 !important;
  transform-origin:center center !important;
  filter:drop-shadow(0 0 calc(var(--phone-w) * 6 / 1080) rgba(255,238,72,.58)) !important;
  will-change:transform,filter !important;
}
@keyframes ceHintReadyPulse223{
  0%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,238,72,0));}
  36%{transform:scale(1.115);filter:drop-shadow(0 0 calc(var(--phone-w) * 9 / 1080) rgba(255,238,72,.68));}
  68%{transform:scale(1.035);filter:drop-shadow(0 0 calc(var(--phone-w) * 5 / 1080) rgba(255,238,72,.42));}
  100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(255,238,72,0));}
}


.legacyResultSheet.visible{
  transform:translateY(calc(100% - var(--result-visible-height, calc(var(--phone-h) * 330 / 1920)))) !important;
}
.legacyResultSheet .legacyResultBox,
.legacyResultOverlay.originalResultPanel .legacyResultBox{
  bottom:var(--result-lower-air, calc(var(--phone-h) * 0.11)) !important;
  max-height:calc(var(--result-visible-height, calc(var(--phone-h) * 330 / 1920)) - var(--result-lower-air, calc(var(--phone-h) * 0.11)) - calc(var(--phone-h) * 28 / 1920)) !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .csdRuntimeHintVisual{
  position:absolute !important;
  display:block !important;
  left:15% !important;
  top:calc(var(--phone-h) * 180 / 1920) !important;
  width:70% !important;
  height:auto !important;
  max-width:none !important;
  object-fit:contain !important;
  transform-origin:top center !important;
  pointer-events:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13[data-visual-hint="1"] .tutorialHintText00_13{
  top:calc(var(--phone-h) * 820 / 1920) !important;
}


.game.scene-01-05 [data-layer-id="fixed-front-source"]{
  pointer-events:none !important;
  z-index:230 !important;
}
.game.scene-01-05 .postitCircleLayer{
  z-index:220 !important;
}
.game.scene-01-05 .postitCirclePiece.fixedCorrect{
  cursor:default !important;
}
.game.scene-01-05 .postitCirclePiece.fixedCorrect img{
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.28)) !important;
}
.game.scene-01-05 .postitCirclePiece.dragging{
  transition:none !important;
}


.game.scene-01-05 .postitCircleLayer{
  pointer-events:auto !important;
}
.game.scene-01-05 .postitCirclePiece{
  pointer-events:none !important;
}
.game.scene-01-05 .receiverDebugZone{
  border-radius:0 !important;
  border:3px dashed rgba(255,92,92,.95) !important;
  background:rgba(255,92,92,.10) !important;
}
.game.scene-01-05 .receiverDebugZone.active{
  border-color:rgba(98,255,146,.95) !important;
  background:rgba(98,255,146,.10) !important;
}


.ceLeafletMapHost{
  background:#e7e2d4 !important;
}
.ceLeafletMap{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  background:#e7e2d4 !important;
  touch-action:pan-x pan-y pinch-zoom !important;
}
.ceLeafletMap .leaflet-container,
.ceLeafletMap.leaflet-container{
  width:100% !important;
  height:100% !important;
  background:#e7e2d4 !important;
  font-family:CE_LocalRoboto, Arial, sans-serif !important;
}
.ceLeafletMap .leaflet-control-attribution{
  font-size:9px !important;
  line-height:1.1 !important;
  background:rgba(255,255,255,.55) !important;
}
.ceLeafletMap .leaflet-control-zoom{
  border:0 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.25) !important;
}
.ceLeafletMap .leaflet-control-zoom a{
  background:rgba(255,255,255,.88) !important;
  color:#25170e !important;
  border-bottom:1px solid rgba(37,23,14,.22) !important;
}
.ceMapDestinationIcon,
.ceMapUserIcon{
  background:transparent !important;
  border:0 !important;
}
.ceMapDestinationIcon span{
  display:block !important;
  width:26px !important;
  height:26px !important;
  border-radius:50% 50% 50% 0 !important;
  transform:rotate(-45deg) !important;
  background:#f8c829 !important;
  border:4px solid #25170e !important;
  box-shadow:0 3px 10px rgba(0,0,0,.35) !important;
}
.ceMapDestinationIcon span::after{
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:8px !important;
  height:8px !important;
  transform:translate(-50%,-50%) !important;
  border-radius:50% !important;
  background:#25170e !important;
}
.ceMapUserArrow{
  display:block !important;
  width:26px !important;
  height:26px !important;
  transform:rotate(var(--ce-heading, 0deg)) !important;
  transform-origin:50% 50% !important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.35)) !important;
}
.ceMapUserArrow::before{
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  top:1px !important;
  width:0 !important;
  height:0 !important;
  transform:translateX(-50%) !important;
  border-left:9px solid transparent !important;
  border-right:9px solid transparent !important;
  border-bottom:24px solid #2f91ff !important;
}
.ceMapUserArrow::after{
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  top:9px !important;
  width:8px !important;
  height:8px !important;
  transform:translateX(-50%) !important;
  border-radius:50% !important;
  background:white !important;
}
.ceMapCompassControl{
  position:absolute !important;
  left:12px !important;
  top:86px !important;
  right:auto !important;
  bottom:auto !important;
  z-index:1000 !important;
  width:42px !important;
  height:42px !important;
  border:0 !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 4px 14px rgba(0,0,0,.28) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.ceMapCompassControl span{
  width:0 !important;
  height:0 !important;
  border-left:8px solid transparent !important;
  border-right:8px solid transparent !important;
  border-bottom:23px solid #25170e !important;
  display:block !important;
}
.ceMapCompassControl.active{background:rgba(248,200,41,.95) !important;}
.ceMapCompassControl.unavailable{opacity:.45 !important;}
.ceLeafletMapError::after{
  content:'Mapa no disponible' !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  color:#25170e !important;
  background:rgba(255,255,255,.78) !important;
  border-radius:12px !important;
  padding:10px 14px !important;
  font:700 14px/1.2 CE_LocalRoboto, sans-serif !important;
}


.ceLeafletMap .leaflet-control-zoom{
  margin-left:12px !important;
  margin-top:12px !important;
}


.ceLeafletMap .leaflet-bottom.leaflet-left{
  left:12px !important;
  bottom:12px !important;
}
.ceLeafletMap .leaflet-bottom.leaflet-left .leaflet-control-zoom{
  margin-left:0 !important;
  margin-bottom:0 !important;
  margin-top:0 !important;
}
.ceLeafletMap .leaflet-control-zoom a{
  width:38px !important;
  height:38px !important;
  line-height:38px !important;
  font-size:23px !important;
}
.ceMapCompassControl{
  left:12px !important;
  top:auto !important;
  bottom:102px !important;
  right:auto !important;
}
.andarinBubbleLayer{
  pointer-events:none !important;
}
.andarinBubbleLayer img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
}


.ceLeafletMap .ceMapCompassControl{
  left:62px !important;
  bottom:12px !important;
  top:auto !important;
  right:auto !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"]{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  overflow:visible !important;
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.72) !important;
  font-family:CE_LocalRoboto,CE_Roboto,Arial,sans-serif !important;
  z-index:82 !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  text-align:center !important;
  line-height:1.14 !important;
  font-family:CE_LocalRoboto,CE_Roboto,Arial,sans-serif !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationTitle{
  color:#e2e2e2 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
  font-weight:700 !important;
  letter-spacing:.2px !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationAddress{
  color:#e2e2e2 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
  font-weight:400 !important;
}
.game.scene-02-01 #contextButton.timingLocked{
  opacity:.3 !important;
  pointer-events:none !important;
}


.game.scene-02-01 [data-layer-id="02.01-destination-card"]{
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  background:rgba(0,0,0,0.490196) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,0.686275) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .textInner{
  width:100% !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.14 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationTitle{
  color:#e2e2e2 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  letter-spacing:.2px !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationPlace{
  color:#fff !important;
  font-size:clamp(20px, calc(var(--phone-w) * 24 / 1080), 28px) !important;
  line-height:1.13 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.game.scene-02-01 [data-layer-id="02.01-destination-card"] .destinationAddress{
  color:#e2e2e2 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}


@font-face{font-family:CE_CantedComic;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:400;}
@font-face{font-family:CE_CantedComicBold;src:url('../assets/fuente.canted.woff2?v=249') format('woff2'),url('../assets/fuente.canted.otf?v=249') format('opentype');font-display:block;font-style:normal;font-weight:700;}
.game .textLayer.speech,
.game .textLayer.narrative{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, CE_CantedComic, cursive !important;
}
.game .textLayer.speech .textInner,
.game .textLayer.narrative .textInner,
.game .textLayer.speech .textInner *,
.game .textLayer.narrative .textInner *{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, CE_CantedComic, cursive !important;
}

.game.scene-00-09 .tutorial09DestinationInitial,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.visible{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  z-index:120 !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  background:rgba(0,0,0,0.490196) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,0.686275) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  display:block !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.visible{
  visibility:visible !important;
  opacity:1 !important;
}
.game.scene-00-09 .tutorial09DestinationInitial .destinationCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.14 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.game.scene-00-09 .tutorial09DestinationInitial .destinationTitle,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationTitle{
  color:#e2e2e2 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  letter-spacing:.2px !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.game.scene-00-09 .tutorial09DestinationInitial .destinationPlace,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationPlace{
  color:#fff !important;
  font-size:clamp(20px, calc(var(--phone-w) * 24 / 1080), 28px) !important;
  line-height:1.13 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.game.scene-00-09 .tutorial09DestinationInitial .destinationAddress,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel .destinationAddress{
  color:#e2e2e2 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}


.textLayer.speech.personaje-1{
  color:#572487 !important;
  font-family:CE_AppCanted, CE_CantedComic, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
  font-synthesis:none !important;
}
.textLayer.speech.personaje-1 .textInner,
.textLayer.speech.personaje-1 .textInner *{
  color:inherit;
}
.textLayer.graphicText[data-explicit-text-color="1"],
.textLayer.graphicText[data-explicit-text-color="1"] .textInner{
  color:inherit !important;
}


.destinationTravelMap .destinationTravelCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard,
.game .destinationInfoLayer.ceDestinationInfoCard,
.game.scene-02-01 [data-layer-id="02.01-destination-card"],
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard.visible{
  position:absolute !important;
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  overflow:visible !important;
  background:rgba(0,0,0,0.490196) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,0.686275) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  display:block !important;
}
.destinationTravelMap .destinationTravelCard .destinationCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationCard,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationCard,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.14 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.destinationTravelMap .destinationTravelCard .destinationTitle,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationTitle,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationTitle,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationTitle,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationTitle{
  color:#e2e2e2 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  letter-spacing:.2px !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.destinationTravelMap .destinationTravelCard .destinationPlace,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationPlace,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationPlace,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationPlace,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationPlace{
  color:#fff !important;
  font-size:clamp(20px, calc(var(--phone-w) * 24 / 1080), 28px) !important;
  line-height:1.13 !important;
  font-weight:700 !important;
  font-style:italic !important;
}
.destinationTravelMap .destinationTravelCard .destinationAddress,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationAddress,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationAddress,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationAddress,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationAddress{
  color:#e2e2e2 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
  font-weight:400 !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorial09DestinationInitial.ceDestinationInfoCard{
  z-index:2600 !important;
  visibility:visible !important;
  opacity:1 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard.visible{
  z-index:8600 !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}


.game.destinationScene .textLayer[data-layer-id^="destination-text"],
.game .destinationInfoLayer.ceDestinationInfoCard,
.destinationTextOverlay.ceDestinationInfoCard,
.destinationTravelMap .destinationTravelCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard.visible{
  left:7% !important;
  top:12% !important;
  width:86% !important;
  height:auto !important;
  box-sizing:border-box !important;
  padding:calc(var(--phone-w) * 6 / 1080) 0 calc(var(--phone-w) * 4 / 1080) 0 !important;
  overflow:visible !important;
  background:rgba(0,0,0,0.490196) !important;
  border:calc(var(--phone-w) * 8 / 1080) solid rgba(0,0,0,0.686275) !important;
  border-radius:calc(var(--phone-w) * 15 / 1080) !important;
  color:#fff !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
  font-synthesis:none !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  display:block !important;
}
.game.destinationScene .textLayer[data-layer-id^="destination-text"] .destinationCard,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationCard,
.destinationTextOverlay.ceDestinationInfoCard .destinationCard,
.destinationTravelMap .destinationTravelCard .destinationCard,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationCard,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationCard{
  width:100% !important;
  padding:0 calc(var(--phone-w) * 20 / 1080) !important;
  line-height:1.14 !important;
  text-align:center !important;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.game.destinationScene .textLayer[data-layer-id^="destination-text"] .destinationCard *,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationCard *,
.destinationTextOverlay.ceDestinationInfoCard .destinationCard *,
.destinationTravelMap .destinationTravelCard .destinationCard *,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationCard *,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationCard *,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationCard *{
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif !important;
}
.game.destinationScene .textLayer[data-layer-id^="destination-text"] .destinationTitle,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationTitle,
.destinationTextOverlay.ceDestinationInfoCard .destinationTitle,
.destinationTravelMap .destinationTravelCard .destinationTitle,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationTitle,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationTitle,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationTitle{
  color:#e2e2e2 !important;
  font-size:clamp(14px, calc(var(--phone-w) * 18 / 1080), 20px) !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  font-style:normal !important;
  letter-spacing:.2px !important;
  margin:0 0 calc(var(--phone-h) * 4 / 1920) !important;
}
.game.destinationScene .textLayer[data-layer-id^="destination-text"] .destinationPlace,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationPlace,
.destinationTextOverlay.ceDestinationInfoCard .destinationPlace,
.destinationTravelMap .destinationTravelCard .destinationPlace,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationPlace,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationPlace,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationPlace{
  color:#fff !important;
  font-size:clamp(20px, calc(var(--phone-w) * 24 / 1080), 28px) !important;
  line-height:1.13 !important;
  font-weight:700 !important;
  font-style:italic !important;
  letter-spacing:.2px !important;
}
.game.destinationScene .textLayer[data-layer-id^="destination-text"] .destinationAddress,
.game .destinationInfoLayer.ceDestinationInfoCard .destinationAddress,
.destinationTextOverlay.ceDestinationInfoCard .destinationAddress,
.destinationTravelMap .destinationTravelCard .destinationAddress,
.destinationTravelMap .mapDestinationOverlayLabel.destinationTravelCard .destinationAddress,
.game.scene-00-09 .tutorial09DestinationInitial.ceDestinationInfoCard .destinationAddress,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard .destinationAddress{
  color:#e2e2e2 !important;
  font-size:clamp(13px, calc(var(--phone-w) * 16 / 1080), 18px) !important;
  line-height:1.12 !important;
  font-weight:400 !important;
  font-style:normal !important;
  letter-spacing:.2px !important;
  margin-top:calc(var(--phone-h) * 3 / 1920) !important;
}
.game.scene-00-09:not(.tutorialMapActive) .tutorial09DestinationInitial.ceDestinationInfoCard{
  z-index:7600 !important;
  visibility:visible !important;
  opacity:1 !important;
}
.game.scene-00-09.tutorialMapActive .routeMapOverlay .routeMapFrame{ z-index:1 !important; }
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard,
.game.scene-00-09.tutorialMapActive .routeMapOverlay .mapDestinationOverlayLabel.ceDestinationInfoCard.visible{
  z-index:9600 !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:none !important;
}


.nativeSpinnerOverlay.csdVertical{
  position:absolute !important;
  inset:0 !important;
  z-index:4600 !important;
  pointer-events:none !important;
}
.nativeSpinnerSlot.csdVertical{
  position:absolute !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  transform-origin:center center !important;
  transition:left .25s ease, top .25s ease, transform .25s ease, z-index 0s linear .25s !important;
}
.nativeSpinnerHitTarget.csdVertical{
  position:absolute !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  background:transparent !important;
  color:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  transform-origin:center center !important;
  -webkit-tap-highlight-color:transparent !important;
  user-select:none !important;
  z-index:4700 !important;
  transition:left .25s ease, top .25s ease, transform .25s ease, z-index 0s linear .25s !important;
}
.nativeSpinnerHitTarget.csdVertical.dragging{cursor:grabbing !important;}
.nativeSpinnerHitTarget.csdVertical.zoomed{
  left:var(--zoom-left) !important;
  top:var(--zoom-top) !important;
  transform:scale(var(--zoom-scale, 1)) !important;
  z-index:4795 !important;
}

.nativeSpinnerSlot.csdVertical.dragging{cursor:grabbing !important;}
.nativeSpinnerSlot.csdVertical.zoomed{
  left:var(--zoom-left) !important;
  top:var(--zoom-top) !important;
  transform:scale(var(--zoom-scale, 1)) !important;
  z-index:2495 !important;
  transition:left .25s ease, top .25s ease, transform .25s ease !important;
}
.nativeSpinnerBase.csdVertical{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:fill !important;
  transform:none !important;
  filter:none !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
}
.nativeSpinnerClip.csdVertical{
  position:absolute !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.nativeSpinnerReel.csdVertical{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  overflow:visible !important;
  pointer-events:none !important;
}
.nativeSpinnerImg.csdVertical{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:fill !important;
  transform:translateY(0);
  filter:none !important;
  pointer-events:none !important;
  user-select:none !important;
  -webkit-user-drag:none !important;
}
.nativeSpinnerImg.incoming.csdVertical{opacity:0;}


.game .textLayer.speech.personaje-1,
.game .textLayer.speech.personaje-1 .textInner,
.game .textLayer.speech.personaje-1 .textInner *{
  color:#572487 !important;
}


.nativeSpinnerHitBand.csdVertical{
  position:absolute !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
  z-index:90000 !important;
  -webkit-tap-highlight-color:transparent !important;
  user-select:none !important;
}
.nativeSpinnerHitBand.csdVertical:active{ cursor:grabbing !important; }


.nativeSpinnerHitTarget.boundedFlip{
  position:absolute !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  opacity:0 !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:grab !important;
}
.nativeSpinnerHitTarget.boundedFlip.dragging{cursor:grabbing !important;}
.game.scene-03-02 .nativeSpinnerImg.boundedFlip,
.game.scene-03-03 .nativeSpinnerImg.boundedFlip,
.game.scene-03-04 .nativeSpinnerImg.boundedFlip{
  filter:none !important;
  height:var(--symbol-height, 100%) !important;
}
.game.scene-03-02 .nativeSpinnerSlot.boundedFlip,
.game.scene-03-03 .nativeSpinnerSlot.boundedFlip,
.game.scene-03-04 .nativeSpinnerSlot.boundedFlip{
  overflow:hidden !important;
}


.nativeSpinnerHitLayer.boundedFlip{
  position:absolute !important;
  inset:0 !important;
  z-index:4720 !important;
  pointer-events:none !important;
}
.nativeSpinnerHitTarget.boundedFlip.csdHorizontalFaceHit{
  opacity:1 !important;
  background:rgba(255,255,255,0.001) !important;
  pointer-events:auto !important;
  touch-action:none !important;
}


.gameInstructionsOverlay{
  position:absolute !important;
  inset:0 !important;
  z-index:2850 !important;
  background:rgba(0,0,0,.862745) !important;
  overflow:hidden !important;
  pointer-events:auto !important;
}
.gameInstructionsCloseSurface{
  position:absolute !important;
  inset:0 !important;
  border:0 !important;
  background:transparent !important;
  padding:0 !important;
  margin:0 !important;
  cursor:pointer !important;
  z-index:0 !important;
}
.gameInstructionsText{
  position:absolute !important;
  left:calc(var(--phone-w) * 50 / 1080) !important;
  top:calc(var(--phone-h) * 300 / 1920) !important;
  width:calc(var(--phone-w) * 980 / 1080) !important;
  z-index:2865 !important;
  color:white !important;
  text-align:center !important;
  font-family:CE_LocalJar, CE_JarOfHearts, CE_LocalRoboto, cursive !important;
  font-size:clamp(28px, calc(var(--phone-w) * 48 / 1080), 52px) !important;
  line-height:1.12 !important;
  text-shadow:0 2px 5px rgba(0,0,0,.85) !important;
  pointer-events:none !important;
}
.gameInstructionsCloseButton{
  position:absolute !important;
  right:calc(var(--phone-w) * 28 / 1080) !important;
  top:calc(var(--phone-h) * 172 / 1920) !important;
  width:calc(var(--phone-w) * 76 / 1080) !important;
  height:calc(var(--phone-w) * 76 / 1080) !important;
  border:calc(var(--phone-w) * 4 / 1080) solid rgba(255,255,255,.8) !important;
  border-radius:50% !important;
  background:rgba(0,0,0,.35) !important;
  color:white !important;
  z-index:2870 !important;
  font-family:CE_LocalRoboto, Arial, sans-serif !important;
  font-size:calc(var(--phone-w) * 58 / 1080) !important;
  line-height:1 !important;
  cursor:pointer !important;
}
.gameInstructionsOverlay .instructionSimulation{
  z-index:2860 !important;
}
.gameInstructionsOverlay .instructionSimulationObject2{
  z-index:1 !important;
}
.gameInstructionsOverlay .instructionSimulationObject,
.gameInstructionsOverlay .instructionSimulationObject2,
.gameInstructionsOverlay .instructionSimulationPulse,
.gameInstructionsOverlay .instructionSimulationHand{
  position:absolute !important;
  display:block !important;
  object-fit:contain !important;
  pointer-events:none !important;
  transform-origin:50% 50% !important;
  max-width:none !important;
  max-height:none !important;
}
.topIcon.info.disabled{
  opacity:.28 !important;
  filter:grayscale(1) brightness(.75) !important;
}


.game > .gameInstructionsOverlay{
  position:absolute !important;
  inset:0 !important;
  z-index:32700 !important;
  background:rgba(0,0,0,.862745) !important;
  overflow:hidden !important;
  pointer-events:auto !important;
  touch-action:none !important;
  cursor:pointer !important;
}
.game > .gameInstructionsOverlay .gameInstructionsText{
  z-index:2 !important;
  pointer-events:none !important;
}
.game > .gameInstructionsOverlay .instructionSimulation{
  z-index:1 !important;
  pointer-events:none !important;
}
.gameInstructionsCloseButton,
.gameInstructionsCloseSurface{
  display:none !important;
}
.receiverDebugZone.rectangular{
  border-radius:10px !important;
}


.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap){
  z-index:2600 !important;
}
.game.routeMapOpen > .topBar.legacyMenuBar{
  z-index:9400 !important;
}
.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap) .routeMapClose{
  top:calc(100% * 286 / 1920) !important;
  right:calc(100% * 24 / 1080) !important;
  z-index:40 !important;
}


@font-face{font-family:CE_JarOfHearts;src:url('../assets/fuente.jarofhearts.otf?v=269') format('opentype');font-display:block;}
.sceneRoot > .routeMapOverlay:not(.tutorialRouteMap){
  z-index:1500 !important;
  background:#111 !important;
  padding:0 !important;
  pointer-events:auto !important;
}
.sceneRoot > .routeMapOverlay:not(.tutorialRouteMap) .routeMapFrame{
  inset:0 !important;
  width:100% !important;
  height:100% !important;
}
.sceneRoot > .routeMapOverlay:not(.tutorialRouteMap) .routeMapClose{
  display:none !important;
}
.game.routeMapOpen .sceneRoot > .topBar.legacyMenuBar{
  z-index:9400 !important;
}
.game.routeMapOpen > #contextButton{
  opacity:.22 !important;
  pointer-events:none !important;
}


.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap){
  position:absolute !important;
  inset:0 !important;
  z-index:5000 !important;
  background:#111 !important;
  padding:0 !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.routeMapOpen > .topBar.legacyMenuBar{
  z-index:9400 !important;
  pointer-events:auto !important;
}
/* If an older stage rule mounts the map in sceneRoot, keep it behind the new
   game-level map and never above the menu. */
.game.routeMapOpen .sceneRoot > .routeMapOverlay:not(.tutorialRouteMap){z-index:1500 !important;}


.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap){
  position:absolute !important;
  inset:0 !important;
  z-index:8000 !important;
  background:#111 !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.routeMapOpen > .sceneRoot{
  z-index:9000 !important;
  background:transparent !important;
  pointer-events:none !important;
}
.game.routeMapOpen > .sceneRoot > :not(.topBar.legacyMenuBar){
  visibility:hidden !important;
  pointer-events:none !important;
}
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar .topIcon,
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar .legacyPercent{
  visibility:visible !important;
  pointer-events:auto !important;
}
.game.routeMapOpen > #contextButton{
  z-index:2400 !important;
  opacity:.22 !important;
  pointer-events:none !important;
}
.game.routeMapOpen .sceneRoot > .routeMapOverlay:not(.tutorialRouteMap){display:none !important;}


.ceMapUserIcon.ceMapOriginTriangleIcon,
.ceMapDestinationIcon.ceMapFinishFlagIcon{
  background:transparent !important;
  border:0 !important;
}
.ceMapOriginTriangle{
  display:block !important;
  position:relative !important;
  width:38px !important;
  height:38px !important;
  transform:rotate(var(--ce-heading, 0deg)) !important;
  transform-origin:50% 50% !important;
  filter:drop-shadow(0 3px 5px rgba(0,0,0,.45)) !important;
}
.ceMapOriginTriangle::before{
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  top:1px !important;
  transform:translateX(-50%) !important;
  width:0 !important;
  height:0 !important;
  border-left:14px solid transparent !important;
  border-right:14px solid transparent !important;
  border-bottom:35px solid #25170e !important;
}
.ceMapOriginTriangle::after{
  content:'' !important;
  position:absolute !important;
  left:50% !important;
  top:6px !important;
  transform:translateX(-50%) !important;
  width:0 !important;
  height:0 !important;
  border-left:9px solid transparent !important;
  border-right:9px solid transparent !important;
  border-bottom:24px solid #572487 !important;
}
.ceMapFinishFlag{
  display:block !important;
  position:relative !important;
  width:42px !important;
  height:42px !important;
  filter:drop-shadow(0 3px 5px rgba(0,0,0,.45)) !important;
}
.ceMapFinishFlag::before{
  content:'' !important;
  position:absolute !important;
  left:9px !important;
  top:4px !important;
  width:4px !important;
  height:34px !important;
  border-radius:2px !important;
  background:#25170e !important;
}
.ceMapFinishFlag i{
  position:absolute !important;
  left:13px !important;
  top:5px !important;
  width:25px !important;
  height:18px !important;
  border:2px solid #25170e !important;
  border-left:0 !important;
  background:
    linear-gradient(45deg,#fff 25%,#25170e 25% 50%,#fff 50% 75%,#25170e 75%) 0 0/12px 12px !important;
  border-radius:1px 4px 4px 1px !important;
}
.ceMapFinishFlag::after{
  content:'' !important;
  position:absolute !important;
  left:4px !important;
  bottom:2px !important;
  width:14px !important;
  height:6px !important;
  border-radius:50% !important;
  background:rgba(37,23,14,.30) !important;
}
.ceLeafletMap .leaflet-interactive{filter:drop-shadow(0 2px 3px rgba(0,0,0,.24));}
.ceLeafletMap .ceMapCompassControl.active{background:rgba(87,36,135,.95) !important;}
.ceLeafletMap .ceMapCompassControl.active span{border-bottom-color:#fff !important;}
.ceMapDestinationIcon.ceMapFinishFlagIcon .ceMapFinishFlag{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  transform:none !important;
  box-shadow:none !important;
}


.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap){
  position:absolute !important;
  inset:0 !important;
  z-index:8500 !important;
  background:#111 !important;
  padding:0 !important;
  pointer-events:auto !important;
  overflow:hidden !important;
}
.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap) .routeMapFrame{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
}
.game.routeMapOpen > .routeMapOverlay:not(.tutorialRouteMap) .routeMapClose{
  display:none !important;
}
.game.routeMapOpen > .sceneRoot{
  position:absolute !important;
  inset:0 !important;
  z-index:9000 !important;
  background:transparent !important;
  pointer-events:none !important;
}
.game.routeMapOpen > .sceneRoot > :not(.topBar):not(.legacyMenuBar),
.game.routeMapOpen > .sceneRoot > .routeMapOverlay:not(.tutorialRouteMap){
  visibility:hidden !important;
  pointer-events:none !important;
}
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar{
  visibility:visible !important;
  z-index:9500 !important;
  pointer-events:auto !important;
}
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar *,
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar .topIcon,
.game.routeMapOpen > .sceneRoot > .topBar.legacyMenuBar .legacyPercent{
  visibility:visible !important;
  pointer-events:auto !important;
}
.game.routeMapOpen > #contextButton{
  visibility:hidden !important;
  pointer-events:none !important;
}


.topBar.legacyMenuBar .topIcon.map.disabled[data-destination-map-disabled="1"]{
  opacity:.35 !important;
  filter:none !important;
  cursor:default !important;
  pointer-events:none !important;
}


.postitCirclePiece.dragging[data-drag-front="1"]{
  z-index:32767 !important;
}


.game.scene-05-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard{
  position:absolute !important;
  left:var(--csd-keyboard-left) !important;
  top:var(--csd-keyboard-top) !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--csd-keyboard-width) !important;
  height:var(--csd-keyboard-height) !important;
  display:grid !important;
  grid-template-rows:1fr !important;
  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
  background:transparent !important;
  z-index:3000 !important;
}
.game.scene-05-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0, 1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:center !important;
  justify-items:center !important;
}
.game.scene-05-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.scene-05-02 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  width:93.814433% !important;
  aspect-ratio:1 / 1 !important;
  height:auto !important;
  min-width:0 !important;
  max-width:93.814433% !important;
  margin:0 !important;
  padding:0 !important;
  place-self:center !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  background:var(--csd-key-fill) !important;
  color:#fff !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(18px, calc(var(--phone-w) * 48 / 1080), 26px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}


.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard{
  position:absolute !important;
  left:var(--csd-keyboard-left) !important;
  top:var(--csd-keyboard-top) !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--csd-keyboard-width) !important;
  height:var(--csd-keyboard-height) !important;
  display:grid !important;
  grid-template-rows:1fr !important;
  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  z-index:3000 !important;
}
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0,1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  height:100% !important;
  gap:0 !important;
  align-items:center !important;
  justify-items:center !important;
  padding:0 !important;
  margin:0 !important;
}
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  width:88% !important;
  max-width:88% !important;
  height:94% !important;
  max-height:94% !important;
  aspect-ratio:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  place-self:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:999px !important;
  clip-path:none !important;
  background:var(--csd-key-fill) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(18px, calc(var(--phone-w) * 48 / 1080), 26px) !important;
  font-weight:400 !important;
  line-height:1 !important;
}
.legacyCsdSingleInputLayer{
  z-index:2620 !important;
  pointer-events:none !important;
}
.legacyCsdSingleInputLayer .legacyCsdInputDisplay{
  background:var(--legacy-input-bg, rgba(0,0,0,.2509803922)) !important;
  color:var(--legacy-input-text, #fff) !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-weight:400 !important;
}
.legacyCsdSingleInputLayer .legacyCsdInputDisplay.active::after{
  content:"";
  position:absolute;
  inset:0;
  box-sizing:border-box;
  background:rgba(255,255,255,.125);
  border:max(4px, calc(var(--phone-w) * 10 / 1080)) solid rgba(255,0,0,.68);
  pointer-events:none;
}
.game.scene-05-02 .legacyCsdSingleInputLayer{
  transform:translateY(calc(var(--phone-h) * 135 / 1920)) !important;
}


.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard{
  position:absolute !important;
  left:var(--csd-keyboard-left) !important;
  top:var(--csd-keyboard-top) !important;
  right:auto !important;
  bottom:auto !important;
  width:var(--csd-keyboard-width) !important;
  height:var(--csd-keyboard-height) !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  display:grid !important;
  grid-template-rows:1fr !important;
  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  transform:none !important;
  z-index:3000 !important;
}
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard > .gameKeyboardRow{
  display:grid !important;
  grid-template-columns:repeat(11, minmax(0, 1fr)) !important;
  grid-template-rows:1fr !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  gap:0 !important;
  column-gap:0 !important;
  row-gap:0 !important;
  align-items:start !important;
  justify-items:start !important;
  padding:0 !important;
  margin:0 !important;
}
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey,
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey.deleteKey{
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:93.814433% !important;    /* 91 / 97 */
  max-width:93.814433% !important;
  height:94.915254% !important;   /* 112 / 118 */
  max-height:94.915254% !important;
  min-width:0 !important;
  min-height:0 !important;
  aspect-ratio:auto !important;
  margin-left:1.030928% !important; /* 1 / 97 */
  margin-top:0.847458% !important;  /* 1 / 118 */
  margin-right:0 !important;
  margin-bottom:0 !important;
  padding:0 !important;
  grid-column:auto !important;
  place-self:start !important;
  border:var(--csd-key-border-width) solid var(--csd-key-border) !important;
  border-radius:var(--csd-key-radius) !important;
  clip-path:none !important;
  background:var(--csd-key-fill) !important;
  color:#fff !important;
  box-shadow:none !important;
  text-shadow:none !important;
  font-family:CE_Roboto, Roboto, sans-serif !important;
  font-size:clamp(14px, calc(var(--phone-w) * 40 / 1080), 22px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
}
.game.keyboardLegacyType1 .gameKeyboard.legacyKeyboard.numeric.csdConfigKeyboard .gameKeyboardKey:active{
  transform:scale(.8) !important;
  filter:none !important;
}

/* 05.02 input belongs to the CSD position itself. The renderer already places
   Input.T.1=65%%; a later scene-local translate pushed the EditText away from
   the B4A/CSD geometry and made the input/keyboard stack look inconsistent. */
.game.scene-05-02 .legacyCsdSingleInputLayer{
  transform:none !important;
}


.gridModulePanel.legacyCsdImageGrid{
  z-index:2510 !important;
  touch-action:manipulation !important;
}
.gridModulePanel.legacyCsdImageGrid .csdGridHit{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:inherit !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0 !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  touch-action:manipulation !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
.gridModulePanel.legacyCsdImageGrid .csdGridHit:active{
  transform:scale(.98) !important;
}
.game:not(.keyboardActive) #contextButton.checkMode,
.game:not(.keyboardActive) .contextButton.checkMode{
  z-index:2560 !important;
}


.gridModulePanel.legacyCsdImageGrid .csdGridHit{
  pointer-events:none !important;
}
.gridModulePanel.legacyCsdImageGrid .csdGridVisual{
  pointer-events:none !important;
}


.game.resultPanelOpen .gridModulePanel,
.game.resultPanelOpen .piecesLayer,
.game.resultPanelOpen .spinnerModule,
.game.resultPanelOpen .nativeSpinnerOverlay,
.game.resultPanelOpen .gameKeyboard,
.game.resultPanelOpen .inputModule{
  pointer-events:none !important;
}


.game.csdHintsRuntime .gridModulePanel,
.game.csdHintsRuntime .piece,
.game.csdHintsRuntime .spinnerModule,
.game .hintOverlay ~ .gridModulePanel{
  pointer-events:none !important;
}
.gameInstructionsOverlay .instructionSimulationObject0{
  z-index:0 !important;
}
.instructionSimulationObject0{
  position:absolute !important;
  display:block !important;
  object-fit:contain !important;
  pointer-events:none !important;
  transform-origin:50% 50% !important;
  max-width:none !important;
  max-height:none !important;
}


.gameInstructionsOverlay .instructionSimulationType7 .instructionSimulationObject{
  left:calc(var(--phone-w) * 425 / 1080) !important;
  top:calc(var(--phone-h) * 860 / 1920) !important;
  width:calc(var(--phone-w) * 100 / 1080) !important;
  height:calc(var(--phone-w) * 100 / 1080) !important;
  z-index:0 !important;
}
.gameInstructionsOverlay .instructionSimulationType7 .instructionSimulationObject0{
  left:calc(var(--phone-w) * 425 / 1080) !important;
  top:calc(var(--phone-h) * 860 / 1920) !important;
  width:calc(var(--phone-w) * 100 / 1080) !important;
  height:calc(var(--phone-w) * 100 / 1080) !important;
  z-index:1 !important;
}
.gameInstructionsOverlay .instructionSimulationType7 .instructionSimulationPulse{
  left:calc(var(--phone-w) * 380 / 1080) !important;
  top:calc(var(--phone-h) * 800 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:2 !important;
}
.gameInstructionsOverlay .instructionSimulationType7 .instructionSimulationHand{
  left:calc(var(--phone-w) * 440 / 1080) !important;
  top:calc(var(--phone-h) * 860 / 1920) !important;
  width:calc(var(--phone-w) * 200 / 1080) !important;
  height:calc(var(--phone-w) * 200 / 1080) !important;
  z-index:3 !important;
}


.contextButton{
  transition:opacity .25s linear, filter .25s linear !important;
}


.textLayer[data-csd-padding-auto-height="1"]{
  height:auto !important;
}


.contextButton.timingLocked{
  cursor:default !important;
  filter:none !important;
}


.game .textLayer[data-csd-text-box="1"]{
  box-sizing:border-box !important;
  text-shadow:none !important;
}
.game .textLayer[data-csd-text-box="1"] .textInner,
.game .textLayer[data-csd-text-box="1"] .textInner *{
  color:inherit !important;
  text-shadow:none !important;
}


.game .textLayer[data-csd-text-box="1"]{
  position:absolute !important;
  border:0 !important;
  --csd-text-box-border-width:calc(var(--phone-w) * 10 / 1080);
  --csd-text-box-border-color:rgba(0,0,0,1);
  --csd-text-box-border-radius:0px;
}
.game .textLayer[data-csd-text-box="1"]::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  box-sizing:border-box !important;
  border:var(--csd-text-box-border-width) solid var(--csd-text-box-border-color) !important;
  border-radius:var(--csd-text-box-border-radius) !important;
  pointer-events:none !important;
  z-index:8 !important;
}
.game .textLayer[data-csd-text-box="1"] .textInner{
  position:relative !important;
  z-index:2 !important;
}


.game .textLayer[data-csd-text-box="1"]{
  box-sizing:border-box !important;
  overflow:visible !important;
}
.game .textLayer[data-csd-text-box="1"] > .csdTextBoxBorderOverlay{
  position:absolute !important;
  inset:0 !important;
  box-sizing:border-box !important;
  pointer-events:none !important;
  z-index:12 !important;
  display:block !important;
  background:transparent !important;
}
.game .textLayer[data-csd-text-box="1"]::after{
  z-index:11 !important;
}


.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]{
  box-sizing:border-box !important;
  border:0 !important;
  box-shadow:none !important;
  text-shadow:none !important;
  outline:var(--csd-text-box-border-width, calc(var(--phone-w) * 10 / 1080)) solid var(--csd-text-box-border-color, rgba(0,0,0,1)) !important;
  outline-offset:calc(-1 * var(--csd-text-box-border-width, calc(var(--phone-w) * 10 / 1080))) !important;
}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] .textInner,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] .textInner *{
  text-shadow:none !important;
}
.game .sceneRoot > .csdTextBoxSceneBorder{
  position:absolute !important;
  box-sizing:border-box !important;
  border:var(--csd-text-box-border-width, calc(var(--phone-w) * 10 / 1080)) solid var(--csd-text-box-border-color, rgba(0,0,0,1)) !important;
  border-radius:var(--csd-text-box-border-radius, 0px) !important;
  background:transparent !important;
  pointer-events:none !important;
  display:block !important;
}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] > .csdTextBoxBorderOverlay,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]::after{
  border-color:var(--csd-text-box-border-color, rgba(0,0,0,1)) !important;
  border-width:var(--csd-text-box-border-width, calc(var(--phone-w) * 10 / 1080)) !important;
  border-style:solid !important;
  border-radius:var(--csd-text-box-border-radius, 0px) !important;
}


@font-face{font-family:CE_CSDOldNewspaper;src:url('../assets/fuente.old.ttf?v=299') format('truetype');font-display:block;font-style:normal;font-weight:400;}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]{
  border:var(--csd-text-box-border-width, calc(var(--phone-w) * 16 / 1080)) solid var(--csd-text-box-border-color, rgba(0,0,0,1)) !important;
  outline:0 !important;
  outline-offset:0 !important;
  box-shadow:none !important;
  background-clip:padding-box !important;
}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]::after,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] > .csdTextBoxBorderOverlay,
.game .sceneRoot > .csdTextBoxSceneBorder{
  border-width:var(--csd-text-box-border-width, calc(var(--phone-w) * 16 / 1080)) !important;
  box-shadow:none !important;
}
.game .textLayer.paper,
.game .textLayer.paper .textInner,
.game .textLayer.paper .textInner *,
.game [data-typography-role="newspaper-old"],
.game [data-typography-role="newspaper-old"] .textInner,
.game [data-typography-role="newspaper-old"] .textInner *,
.game.scene-00-04 [data-layer-id="text-1"],
.game.scene-00-04 [data-layer-id="text-2"],
.game.scene-00-04 [data-layer-id="text-1"] .textInner,
.game.scene-00-04 [data-layer-id="text-2"] .textInner,
.game.scene-00-04 [data-layer-id="text-1"] .textInner *,
.game.scene-00-04 [data-layer-id="text-2"] .textInner *{
  font-family:CE_CSDOldNewspaper, CE_LocalOld, CE_Old, serif !important;
  font-weight:400 !important;
  font-style:normal !important;
  font-synthesis:none !important;
  text-shadow:none !important;
}


.game .gridModulePanel.testGrid .gridTile.textChoice{
  font-family:CE_CantedComic, CE_LocalCanted, CE_Canted, sans-serif !important;
  font-size:calc(var(--phone-w) * 38 / 1080) !important;
  line-height:1.05 !important;
  white-space:normal !important;
  overflow:hidden !important;
  text-align:center !important;
  word-break:normal !important;
  overflow-wrap:break-word !important;
  padding:calc(var(--phone-w) * 10 / 1080) calc(var(--phone-w) * 24 / 1080) !important;
}
.game .legacyTestSummary.exactCsdSummary{
  font-family:CE_CantedComic, CE_LocalCanted, CE_Canted, sans-serif !important;
  font-size:calc(var(--phone-w) * 38 / 1080) !important;
  line-height:1.16 !important;
  padding:calc(var(--phone-h) * 30 / 1920) calc(var(--phone-w) * 30 / 1080) calc(var(--phone-h) * 35 / 1920) calc(var(--phone-w) * 30 / 1080) !important;
  border-width:calc(var(--phone-w) * 16 / 1080) !important;
  background:#EBD7FF !important;
  color:#572487 !important;
}
.game .legacyTestSummaryPortrait.exactPos2{
  width:12.037037% !important;
  left:calc(10% - 6.018518% + 1.851852%) !important;
}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]{
  --csd-text-box-border-width:calc(var(--phone-w) * 16 / 1080) !important;
}
.game .sceneRoot > .csdTextBoxSceneBorder,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] > .csdTextBoxBorderOverlay{
  border-width:calc(var(--phone-w) * 16 / 1080) !important;
}


.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]{
  --csd-text-box-border-width:calc(var(--phone-w) * 10 / 1080) !important;
  border-width:calc(var(--phone-w) * 10 / 1080) !important;
  box-shadow:none !important;
  outline:0 !important;
}
.game .sceneRoot > .csdTextBoxSceneBorder,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] > .csdTextBoxBorderOverlay,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]::after{
  border-width:calc(var(--phone-w) * 10 / 1080) !important;
  box-shadow:none !important;
}
.game .legacyTestSummary.exactCsdSummary{
  border-width:calc(var(--phone-w) * 10 / 1080) !important;
  box-shadow:none !important;
  font-size:calc(var(--phone-w) * 36 / 1080) !important;
  line-height:1.12 !important;
}
.game .legacyTestSummaryPortrait.exactPos2{
  border:calc(var(--phone-w) * 10 / 1080) solid #000 !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  background:#EBD7FF !important;
  object-fit:cover !important;
}
.game .gridModulePanel.testGrid .gridTile.textChoice{
  font-size:calc(var(--phone-w) * 34 / 1080) !important;
  line-height:1.02 !important;
  padding:calc(var(--phone-w) * 6 / 1080) calc(var(--phone-w) * 20 / 1080) !important;
}


.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]{
  --csd-text-box-border-width:calc(var(--phone-w) * 10 / 1080) !important;
  border:calc(var(--phone-w) * 10 / 1080) solid var(--csd-text-box-border-color, rgba(0,0,0,1)) !important;
  outline:0 !important;
  box-shadow:none !important;
  background-clip:border-box !important;
}
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"]::after,
.game .sceneRoot > .textLayer.csdTextBox[data-csd-text-box="1"] > .csdTextBoxBorderOverlay,
.game .sceneRoot > .csdTextBoxSceneBorder{
  content:none !important;
  display:none !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}


.game .legacyTestSummary.exactCsdSummary{
  left:10% !important;
  width:80% !important;
  top:calc(var(--legacy-p0-top) + ((100% - var(--legacy-p0-top)) * .45)) !important;
  transform:translateY(-50%) !important;
  box-sizing:border-box !important;
  min-height:0 !important;
  height:auto !important;
  padding:calc(var(--phone-h) * 30 / 1920) calc(var(--phone-w) * 30 / 1080) calc(var(--phone-h) * 35 / 1920) calc(var(--phone-w) * 80 / 1080) !important;
  background:#EBD7FF !important;
  border:calc(var(--phone-w) * 10 / 1080) solid #000 !important;
  box-shadow:none !important;
  outline:0 !important;
  color:#572487 !important;
  font-family:CE_AppCanted, CE_CantedComic, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
  font-size:calc(var(--phone-w) * 34 / 1080) !important;
  line-height:1.18 !important;
  text-align:center !important;
  overflow:visible !important;
}
.game .legacyTestSummary.exactCsdSummary strong{
  color:#007D00 !important;
  font-weight:700 !important;
}
.game .legacyTestSummaryPortrait.exactPos2{
  width:calc(var(--phone-w) * 130 / 1080) !important;
  height:calc(var(--phone-w) * 130 / 1080) !important;
  left:calc(10% - (var(--phone-w) * 65 / 1080) + (var(--phone-w) * 20 / 1080)) !important;
  top:calc(var(--legacy-p0-top) + ((100% - var(--legacy-p0-top)) * .45) - (var(--phone-w) * 65 / 1080) + (var(--phone-h) * 30 / 1920)) !important;
  border:calc(var(--phone-w) * 10 / 1080) solid #000 !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  background:#EBD7FF !important;
  object-fit:cover !important;
  z-index:2460 !important;
}


.game .textLayer.speech .speechPortrait,
.game .legacyTestSummary.exactCsdSummary .speechPortrait,
.game .legacyTestSummaryPortrait.exactPos2{
  border:calc(var(--phone-w) * 8 / 1080) solid #000 !important;
  border-radius:50% !important;
  box-sizing:border-box !important;
  background:#EBD7FF !important;
  object-fit:cover !important;
}
.game .legacyTestSummary.exactCsdSummary{
  left:10% !important;
  width:80% !important;
  top:calc(var(--legacy-p0-top) + ((100% - var(--legacy-p0-top)) * .45)) !important;
  transform:translateY(-50%) !important;
  box-sizing:border-box !important;
  min-height:0 !important;
  height:auto !important;
  overflow:visible !important;
  padding:calc(var(--phone-h) * 30 / 1920) calc(var(--phone-w) * 30 / 1080) calc(var(--phone-h) * 35 / 1920) calc(var(--phone-w) * 80 / 1080) !important;
  background:#EBD7FF !important;
  border:calc(var(--phone-w) * 8 / 1080) solid #000 !important;
  outline:0 !important;
  box-shadow:none !important;
  color:#572487 !important;
  font-family:CE_AppCanted, CE_CantedComic, CE_RuntimeCanted, CE_LocalCanted, cursive !important;
  font-size:calc(var(--phone-w) * 38 / 1080) !important;
  line-height:1.12 !important;
  text-align:center !important;
  text-shadow:none !important;
}
.game .legacyTestSummary.exactCsdSummary .textInner,
.game .legacyTestSummary.exactCsdSummary .textInner *{
  color:#572487 !important;
}
.game .legacyTestSummary.exactCsdSummary .speechPortrait.legacyTestSummaryPortrait.exactPos2{
  position:absolute !important;
  display:block !important;
  width:calc(var(--phone-w) * 130 / 1080) !important;
  height:calc(var(--phone-w) * 130 / 1080) !important;
  min-width:calc(var(--phone-w) * 130 / 1080) !important;
  min-height:calc(var(--phone-w) * 130 / 1080) !important;
  max-width:calc(var(--phone-w) * 130 / 1080) !important;
  max-height:calc(var(--phone-w) * 130 / 1080) !important;
  left:calc(0% - (var(--phone-w) * 65 / 1080) + (var(--phone-w) * 20 / 1080)) !important;
  top:calc(0% - (var(--phone-w) * 65 / 1080) + (var(--phone-h) * 30 / 1920) * 0.921875) !important;
  z-index:4 !important;
  transform:none !important;
}
.game .legacyTestSummary.exactCsdSummary .speechPortraitImage{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  border-radius:50% !important;
}


.game .legacyTestSummary.exactCsdSummary{
  font-size:calc(var(--phone-w) * var(--summary-font-size-logical, 42) / 1080) !important;
  line-height:1.12 !important;
}
.game .legacyTestSummary.exactCsdSummary .textInner,
.game .legacyTestSummary.exactCsdSummary .textInner *{
  font-size:inherit !important;
}
.game .legacyTestSummary.exactCsdSummary .textInner strong{
  color:#007D00 !important;
  font-weight:700 !important;
}


.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsViewport00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintsTrack00_13{
  pointer-events:none !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13,
.game.csdHintsRuntime .csdRuntimeHintsOverlay .tutorialHintSheet00_13 *{
  pointer-events:auto !important;
}
.game.csdHintsRuntime .csdRuntimeHintsOverlay .csdRuntimeHintsBlockingShade{
  pointer-events:auto !important;
}


.game.scene-11-03 .legacyCsdMultiInputCell{
  font-family:CE_LocalRoboto,CE_Roboto,Roboto,sans-serif !important;
  font-size:29px !important;
  color:#272727 !important;
  background:rgba(0,0,0,.2509803922) !important;
  border:0 !important;
  box-shadow:none !important;
}
.game.scene-11-03 .legacyCsdMultiInputCell.active{
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,.95) !important;
  outline-offset:calc(var(--phone-w) * -3 / 1080) !important;
}


.game.scene-12-02 .legacyCsdMultiInputCell{
  font-family:CE_LocalRedonda, CE_LocalRoboto, sans-serif !important;
  font-size:36.25px !important; /* Input.Size=25 × MultiplicadorTextos≈1.45 */
  color:#272727 !important;
  background:rgba(0,0,0,.2509803922) !important;
  border:0 !important;
  box-shadow:none !important;
}
.game.scene-12-02 .legacyCsdMultiInputCell.active{
  outline:calc(var(--phone-w) * 6 / 1080) solid rgba(255,0,0,.95) !important;
  outline-offset:calc(var(--phone-w) * -3 / 1080) !important;
}
.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"]{
  font-family:CE_LocalRedonda, CE_LocalRoboto, sans-serif !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
  text-align:center !important;
}
.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"] .textInner{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}


.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"]{
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
  text-align:center !important;
  font-family:CE_LocalRedonda, CE_LocalRoboto, sans-serif !important;
}
.game.scene-12-02 .textLayer[data-layer-id^="12.02-labeltext-"] .textInner{
  width:100% !important;
  display:block !important;
  text-align:center !important;
}
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-1"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-8"]{
  font-size:36.25px !important;
}
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-2"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-3"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-4"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-5"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-6"],
.game.scene-12-02 .textLayer[data-layer-id="12.02-labeltext-7"]{
  font-size:26.1px !important; /* Texto.Size=18 × MultiplicadorTextos≈1.45 */
}

.layer[data-layer-id="16.01-credits"]{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  scrollbar-width:none;
  -ms-overflow-style:none;
  touch-action:pan-y;
}
.layer[data-layer-id="16.01-credits"]::-webkit-scrollbar{display:none;}
.creditsViewport{overflow-y:auto; overflow-x:hidden;}
.creditsContent{position:relative !important; left:0; top:0; width:100%; will-change:scroll-position;}
.game.scene-16-01 .creditsItem.textLayer,
.game.scene-16-01 .creditsItem.textLayer .textInner,
.game.scene-16-01 .creditsItem.textLayer .textInner *{
  font-family:CE_LocalRoboto, CE_Roboto, Roboto, sans-serif !important;
  text-shadow:none !important;
}
.game.scene-16-01 .creditsItem.textLayer{
  color:#fff;
  line-height:1.15 !important;
}
.game.scene-16-01 .creditsItem.textLayer .align-c{
  display:block;
  text-align:center !important;
}
.layer[data-layer-id="16.01-hand"],
.layer[data-layer-id="16.01-pulse"]{
  pointer-events:none;
  will-change:transform,opacity;
}


.game.scene-16-01 .layer[data-layer-id="16.01-credits"]{
  background:transparent !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  touch-action:pan-y !important;
}
.game.scene-16-01 .layer[data-layer-id="16.01-credit-frame"] img{
  width:100% !important;
  height:100% !important;
  object-fit:fill !important;
  display:block !important;
}
.game.scene-16-01 .creditsContent{
  background:transparent !important;
}
.game.scene-12-02 .legacyCsdMultiInputCell{
  /* Position now comes from InputModule + Panel0.Con. Do not override top here. */
}


.game.scene-16-01 .creditsItem.textLayer,
.game.scene-16-01 .creditsItem.textLayer .textInner,
.game.scene-16-01 .creditsItem.textLayer .textInner *{
  font-family:CE_AppCanted, CE_RuntimeCanted, CE_CantedStage87, CE_LocalCanted, CE_LocalRoboto, sans-serif !important;
  text-shadow:none !important;
}
.game.scene-16-01 .creditsItem.textLayer{
  line-height:1.15 !important;
  color:#fff;
}
.game.scene-16-01 .layer[data-layer-id="16.01-hand"]{
  z-index:5002 !important;
}
.game.scene-16-01 .layer[data-layer-id="16.01-pulse"]{
  z-index:5001 !important;
}


.game.scene-17-01 .textLayer{
  text-shadow:none !important;
}
.game.scene-17-01 .layer[data-layer-id="17.01-text2"],
.game.scene-17-01 .layer[data-layer-id="17.01-text3"],
.game.scene-17-01 .layer[data-layer-id="17.01-nick"],
.game.scene-17-01 .layer[data-layer-id="17.01-skip"],
.game.scene-17-01 .layer[data-layer-id="17.01-continue"],
.game.scene-17-01 .layer[data-layer-id="17.01-auth-label"]{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.game.scene-17-01 .layer[data-layer-id="17.01-text3"]{ line-height:1.1 !important; }
.game.scene-17-01 .layer[data-layer-id="17.01-time"]{
  letter-spacing:1px;
}
.photoMemoryMedia video.mirrorX,
.photoMemoryMedia .photoMemoryCaptured.mirrorX{
  transform:scaleX(-1);
}
.photoMemoryFlash{
  position:absolute;
  inset:0;
  background:#fff;
  pointer-events:none;
}


.game.scene-17-01 .photoMemoryInlineEmoji{
  width:calc(var(--phone-w) * 50 / 1080);
  height:calc(var(--phone-w) * 50 / 1080);
  object-fit:contain;
  vertical-align:middle;
  display:inline-block;
  margin-right:calc(var(--phone-w) * 6 / 1080);
}
.game.scene-17-01 .photoMemoryMedia{
  z-index:3 !important;
  background:#000;
}
.game.scene-17-01 .photoMemoryMedia video,
.game.scene-17-01 .photoMemoryMedia .photoMemoryCaptured{
  z-index:1;
  object-position:center top;
}
.game.scene-17-01 .photoMemoryStatus{
  z-index:2;
}
.game.scene-17-01 .layer[data-layer-id="17.01-polaroid"]{
  z-index:8 !important;
  pointer-events:none;
}
.game.scene-17-01 .layer[data-layer-id="17.01-top-black"],
.game.scene-17-01 .layer[data-layer-id="17.01-bottom-black"]{
  z-index:7 !important;
}
.game.scene-17-01 .layer[data-layer-id="17.01-date"],
.game.scene-17-01 .layer[data-layer-id="17.01-time"],
.game.scene-17-01 .layer[data-layer-id="17.01-sello"],
.game.scene-17-01 .layer[data-layer-id="17.01-crono"],
.game.scene-17-01 .layer[data-layer-id="17.01-nick"]{
  z-index:20 !important;
}
.game.scene-17-01 .layer[data-layer-id="17.01-nick"] .textInner:empty{
  display:none;
}
.game.scene-17-01 .layer[data-layer-id="17.01-auth-label"]{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:left !important;
  line-height:1.05 !important;
  padding:0 !important;
}
.game.scene-17-01 .layer[data-layer-id="17.01-auth-label"] .textInner{
  width:100% !important;
  text-align:left !important;
}
.photoMemoryStatus{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:0 8%;
  color:rgba(255,255,255,.86);
  background:#000;
  font-family:CE_LocalRoboto, CE_Roboto, Arial, sans-serif;
  font-weight:700;
  font-size:calc(var(--phone-w) * 24 / 1080);
  pointer-events:none;
}


.game.scene-13-06 [data-layer-id="13.06-street"] img{
  object-position:center bottom !important;
}


.game.scene-00-08 [data-layer-id="text-1"],
.game.scene-00-08 [data-layer-id="text-1"] .textInner,
.game.scene-00-08 [data-layer-id="text-1"] .textInner *,
.game.scene-00-08 [data-layer-id="text-2"],
.game.scene-00-08 [data-layer-id="text-2"] .textInner,
.game.scene-00-08 [data-layer-id="text-2"] .textInner *{
  color:#572487 !important;
  -webkit-text-fill-color:#572487 !important;
}

/* Generic legacy input look validated on 01.02. 12.02 is excluded because the
   Redonda portico screen has its own CSD font and dark glyph contract. */
.game:not(.scene-12-02) .legacyCsdMultiInputCell,
.game:not(.scene-12-02) .legacyCsdInputDisplay{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  font-family:CE_LocalRoboto, CE_Roboto, Roboto, sans-serif !important;
  font-weight:700 !important;
  text-shadow:0 2px 2px rgba(0,0,0,.55) !important;
  background:var(--legacy-cell-bg, var(--legacy-input-bg, rgba(0,0,0,.2509803922))) !important;
}
.game:not(.scene-12-02) .legacyCsdMultiInputCell.active{
  outline:max(4px, calc(var(--phone-w) * 10 / 1080)) solid rgba(255,0,0,.68) !important;
  outline-offset:0 !important;
  box-shadow:none !important;
}
.game:not(.scene-12-02) .legacyCsdInputDisplay.active::after{
  border:max(4px, calc(var(--phone-w) * 10 / 1080)) solid rgba(255,0,0,.68) !important;
  background:rgba(255,255,255,.125) !important;
}


.game.scene-13-06 [data-layer-id="13.06-street"]{ top:40% !important; }
.game.scene-13-06 [data-layer-id="13.06-car"]{ top:60% !important; }
.game.scene-13-06 [data-layer-id="13.06-text2"]{ top:37% !important; }


/* QA fine polish 363.
   00.14 is tap-anywhere, but the full-screen tap layer must consume early taps
   until the delayed second tutorial text has appeared. */
.tutorialTapAdvance00_14.tutorialTapAdvanceLocked00_14{
  cursor:default !important;
}
