@font-face {font-family:'Barlow Condensed';font-style:normal;font-weight:700 900;font-display:swap;src:url('assets/barlow-800.woff2') format('woff2');}
@font-face {font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/dm-sans.woff2') format('woff2');}
:root {--gold:#ffcb24;--ink:#10120f;--cream:#f7f3e8;--muted:#60634f;--outline:#d6d4c2;}
* {box-sizing:border-box;}body {margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:14px;}
a {color:inherit;}button {font:inherit;border:0;cursor:pointer;touch-action:manipulation;}button,a {-webkit-tap-highlight-color:transparent;}button:disabled {opacity:.45;cursor:not-allowed;}
[hidden] {display:none!important;}button:focus-visible,a:focus-visible,canvas:focus-visible {outline:3px solid #00728b;outline-offset:4px;}
.game-skip {position:fixed;z-index:30;top:-100px;left:15px;background:var(--gold);color:var(--ink);padding:15px;}.game-skip:focus {top:0;}
h1,h2,h3,.game-brand {font-family:'Barlow Condensed',Impact,sans-serif;line-height:.95;letter-spacing:-.02em;}
.arcade-header {display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1440px;margin:auto;padding:25px 6%;border-bottom:1px solid var(--outline);}
.game-brand {font-size:23px;text-decoration:none;line-height:.86;font-weight:800;}.game-brand b {display:block;font-size:28px;}
.arcade-header>span {font-size:10px;font-weight:800;letter-spacing:.1em;}
.back-shop {padding:12px 15px;border:1px solid var(--ink);border-radius:999px;text-decoration:none;font-size:10px;font-weight:800;}
.arcade-main {max-width:1210px;margin:45px auto;display:grid;grid-template-columns:minmax(250px,380px) minmax(0,510px);justify-content:space-between;gap:70px;padding:0 5%;}
.arcade-intro {align-self:center;}
.arcade-eyebrow {font-size:11px;color:#866000;font-weight:800;letter-spacing:.12em;}
.arcade-intro h1 {font-size:clamp(70px,7.5vw,114px);margin:17px 0 18px;font-weight:900;}.arcade-intro h1 em {font-style:normal;color:#a16e00;}
.intro-description {font-size:15px;line-height:1.65;color:#4f5644;max-width:350px;}.intro-description b {font-weight:600;}
.arcade-character {position:relative;width:210px;height:165px;margin:15px 0;}
.arcade-character::before {content:'';position:absolute;width:140px;height:140px;left:32px;top:7px;border-radius:50%;background:#ffcb242a;border:1px solid #dcb847;transform:rotateX(30deg);}
.sprite-foquita {position:absolute;inset:0;background:url('assets/foquita-gaviotas-sprites-20261008.png') 0 0 / 200% 200% no-repeat;transform:rotate(-8deg);filter:drop-shadow(0 10px 10px #0002);}
.arcade-character i {position:absolute;right:-20px;bottom:5px;font-style:normal;font-size:60px;color:#ba8600;}.arcade-character>b {position:absolute;top:10px;right:0;font-size:25px;}
.game-rules {margin:25px 0 20px;padding:0;list-style:none;display:flex;flex-direction:column;gap:16px;}
.game-rules li {display:flex;gap:15px;}.game-rules li>b {display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border:1px solid #b9b9a3;border-radius:50%;font-size:10px;}
.game-rules strong {font-size:11px;font-weight:800;letter-spacing:.04em;}.game-rules p {font-size:12px;color:#60634f;line-height:1.5;margin:5px 0 0;}
.arcade-disclaimer {border-top:1px solid var(--outline);padding-top:16px;font-size:10px;line-height:1.6;color:#777b62;max-width:350px;}
.arcade-play {width:100%;min-width:0;}
.game-hud {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 4px 18px;}
.game-hud>div {display:flex;flex-direction:column;gap:7px;}.game-hud span {font-size:9px;font-weight:800;letter-spacing:.06em;color:#6b704f;}.game-hud b {font-family:'Barlow Condensed',Impact,sans-serif;font-size:31px;line-height:1;}
.game-hud #game-lives {font-family:'DM Sans',sans-serif;font-size:19px;color:#a87000;line-height:1.4;white-space:nowrap;}
.game-toolbar {display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 4px;border-top:1px solid var(--outline);}
.game-toolbar>div {display:flex;gap:6px;align-items:center;}
.game-toolbar button {padding:8px 10px;border-radius:8px;background:#eae6d6;color:var(--ink);font-size:9px;font-weight:800;letter-spacing:.02em;}
.game-toolbar button[data-game=restart] {font-size:20px;line-height:1;padding:3px 11px;}
.game-toolbar button[aria-pressed=true] {background:#ffcb24;}
.game-mode {font-size:9px;letter-spacing:.035em;font-weight:800;color:#72603a;}.game-mode.is-powered {color:#8c6500;}
.game-board {position:relative;width:100%;aspect-ratio:17/19;background:#0b100d;border:1px solid #c6a045;border-radius:20px;overflow:hidden;box-shadow:0 25px 60px #27391e21;isolation:isolate;}
#foquita-canvas {display:block;width:100%;height:100%;touch-action:none;outline-offset:-4px;}
#game-overlay {position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;background:#070d07cb;backdrop-filter:blur(3px);color:#fffaf0;}
.overlay-chip {font-size:9px;font-weight:800;letter-spacing:.08em;border:1px solid #c3aa5a7a;border-radius:999px;padding:8px 12px;color:#ffdf6b;}
#game-overlay h2 {font-size:clamp(38px,4vw,57px);margin:22px 0 15px;font-weight:900;}
#game-overlay p {font-size:13px;line-height:1.65;max-width:320px;color:#e4e5d5;margin:0 0 22px;}
.game-start {background:var(--gold);color:var(--ink);font-size:13px;font-weight:800;padding:17px 28px;border-radius:12px;box-shadow:0 5px 25px #ffcb2423;transition:transform .2s,background .2s;}
.game-start:hover {background:#ffe17d;transform:translateY(-2px);}
#game-overlay small {font-size:9px;color:#aaaf9a;line-height:1.5;margin-top:16px;}
.game-underboard {display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-inline:4px;font-size:9px;font-weight:800;letter-spacing:.035em;color:#5d6549;}
.game-underboard b {color:#10120f;padding-left:8px;}.keyboard-hint i {font-style:normal;color:#b59732;margin:0 5px;}
.game-controls {display:none;align-items:center;justify-content:space-between;gap:20px;margin:16px 4px 0;}
.touch-hint {font-size:9px;line-height:1.65;letter-spacing:.02em;color:#6c735b;}
.direction-pad {display:grid;grid-template-columns:repeat(3,43px);grid-template-rows:repeat(3,37px);gap:4px;}
.direction-pad button {font-size:23px;border-radius:10px;background:#e5dfcb;color:#10120f;user-select:none;-webkit-user-select:none;}.direction-pad button:active {background:#ffcb24;}
.direction-pad button[data-direction=up] {grid-area:1/2;}.direction-pad button[data-direction=left] {grid-area:2/1;}.direction-pad button[data-direction=right] {grid-area:2/3;}.direction-pad button[data-direction=down] {grid-area:3/2;}.direction-pad>span {grid-area:2/2;display:grid;place-items:center;font-size:20px;color:#a57900;}
.game-status {font-size:11px;line-height:1.5;color:#596449;margin:13px 4px 0;min-height:16px;}
.arcade-footer {display:flex;justify-content:space-between;align-items:center;gap:15px;padding:23px 6%;border-top:1px solid var(--outline);font-size:10px;font-weight:800;letter-spacing:.03em;max-width:1440px;margin:auto;}
.arcade-footer>a {text-decoration:none;background:#10120f;color:#ffcb24;padding:12px 17px;border-radius:10px;}
.no-script {text-align:center;padding:20px;}
html[data-embedded=true] body {background:#f7f3e8;}
html[data-embedded=true] .arcade-header,html[data-embedded=true] .arcade-intro,html[data-embedded=true] .arcade-footer {display:none;}
html[data-embedded=true] .arcade-main {display:block;max-width:550px;padding:15px 20px 10px;margin:0 auto;}
html[data-embedded=true] .game-hud {padding-bottom:12px;}
html[data-embedded=true] .game-board {width:min(100%,calc((100dvh - 170px)*17/19));margin:auto;}
html[data-embedded=true] .game-status {margin-top:8px;}
@media(max-width:900px) {.arcade-main {gap:35px;grid-template-columns:minmax(210px,300px) minmax(0,470px);}.arcade-intro h1 {font-size:80px;}.arcade-character {width:175px;height:150px;}.arcade-header {padding-inline:5%;}.arcade-header>span {font-size:9px;}}
@media(max-width:700px) {
 .arcade-header {padding:18px 5%;}.game-brand {font-size:19px;}.game-brand b {font-size:23px;}.arcade-header>span {display:none;}.back-shop {font-size:9px;padding:10px 12px;}
 .arcade-main {display:flex;flex-direction:column;gap:22px;margin:24px auto 25px;padding:0 5.5%;max-width:530px;}
 .arcade-intro {width:100%;}.arcade-eyebrow {font-size:9px;}.arcade-intro h1 {font-size:49px;margin:10px 0 8px;}.arcade-intro h1 br {display:none;}
 .intro-description {font-size:12px;margin:0;max-width:none;line-height:1.55;}.arcade-character,.game-rules,.arcade-disclaimer {display:none;}
 .game-hud {padding-bottom:12px;}.game-hud b {font-size:28px;}.game-hud span {font-size:8px;}.game-hud #game-lives {font-size:16px;line-height:1.5;}
 .game-toolbar {padding-block:9px;gap:5px;}.game-toolbar button {font-size:8px;padding:8px;}.game-mode {font-size:8px;max-width:110px;line-height:1.4;}
 .game-board {border-radius:16px;}#game-overlay {padding:17px;}#game-overlay h2 {font-size:40px;margin:17px 0 12px;}#game-overlay p {font-size:12px;margin-bottom:18px;}.overlay-chip {font-size:8px;}
 .game-underboard {font-size:8px;margin-top:10px;}.keyboard-hint {display:none;}.game-controls {display:flex;margin-top:7px;}.game-status {font-size:10px;}
 .arcade-footer {padding:20px 5.5%;font-size:8px;flex-wrap:wrap;}.arcade-footer>a {font-size:9px;}
 html[data-embedded=true] .arcade-main {padding:12px 12px 6px;}
 html[data-embedded=true] .game-board {width:min(100%,calc((100dvh - 290px)*17/19));}
 html[data-embedded=true] .game-controls {justify-content:center;gap:23px;}
}
@media(pointer:coarse) {.game-controls {display:flex;}}
@media(prefers-reduced-motion:reduce) {* {scroll-behavior:auto!important;}.game-start {transition:none;}.game-start:hover {transform:none;}}

/* Cupón Arcade: separado del puntaje y sin aplicar descuentos automáticamente. */
.game-reward {padding:12px 14px;margin:0 0 17px;background:#eee8d5;border:1px solid #c9ba81;border-radius:13px;}
.reward-heading {display:flex;justify-content:space-between;gap:12px;align-items:center;}.reward-heading strong {font-size:11px;letter-spacing:.04em;}.reward-heading>span {font-size:8px;font-weight:700;color:#766024;text-align:right;}
.reward-meter {display:flex;gap:12px;align-items:center;margin-top:9px;}.reward-meter progress {appearance:none;width:100%;height:6px;border:0;background:#d5ccb1;border-radius:999px;overflow:hidden;}.reward-meter progress::-webkit-progress-bar {background:#d5ccb1;}.reward-meter progress::-webkit-progress-value {background:#a77400;border-radius:999px;}.reward-meter progress::-moz-progress-bar {background:#a77400;}.reward-meter b {font-size:9px;white-space:nowrap;min-width:46px;}
#game-reward-status {font-size:9px;line-height:1.5;margin:7px 0;color:#65582c;}.reward-terms {font-size:8px;line-height:1.55;color:#65582c;}.reward-terms summary {font-weight:800;cursor:pointer;}.reward-terms p {margin:7px 0 0;}
.game-reward.is-unlocked {background:#ffdc65;}.reward-claim {background:#10120f;color:#fffaf0;width:100%;padding:11px;border-radius:9px;font-size:10px;font-weight:800;margin:5px 0 10px;}
#game-coupon-code {display:block;font-size:10px;overflow-wrap:anywhere;user-select:all;letter-spacing:.025em;margin:9px 0;}#game-coupon-result>div {display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px;}#game-coupon-result button {font-size:9px;font-weight:800;border-radius:7px;padding:9px;background:#10120f;color:#fffaf0;}
html[data-embedded=true] .game-reward {margin-bottom:10px;padding:9px 12px;}
html[data-embedded=true] .game-board {width:min(100%,max(220px,calc((100dvh - 300px)*17/19)));}
@media(max-width:700px) {.reward-heading strong {font-size:10px;}.reward-heading>span {font-size:7px;}.game-reward {padding:10px 12px;margin-bottom:13px;}html[data-embedded=true] .game-board {width:min(100%,max(220px,calc((100dvh - 410px)*17/19)));}}
@media(max-width:420px) {html[data-embedded=true] #game-overlay {padding:12px;}html[data-embedded=true] #game-overlay h2 {font-size:28px;margin:10px 0;}html[data-embedded=true] #game-overlay p {font-size:10px;line-height:1.4;margin-bottom:10px;}html[data-embedded=true] .overlay-chip {font-size:7px;padding:6px 9px;}html[data-embedded=true] .game-start {font-size:11px;padding:12px 20px;}html[data-embedded=true] #game-overlay small {font-size:7px;margin-top:10px;max-width:210px;}}
/* El tablero usa la altura disponible; el cupón queda al costado en escritorio. */
html[data-embedded=true] .arcade-main {max-width:1280px;height:100dvh;margin:0 auto;padding:16px;}
html[data-embedded=true] .arcade-play {height:100%;display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);grid-template-rows:auto auto auto 1fr auto auto;grid-template-areas:'reward board' 'hud board' 'toolbar board' 'controls board' 'status board' 'under board';gap:14px 28px;align-items:start;}
html[data-embedded=true] .game-reward {grid-area:reward;margin:0;padding:16px;}
html[data-embedded=true] .game-hud {grid-area:hud;padding:8px 0;}
html[data-embedded=true] .game-toolbar {grid-area:toolbar;}
html[data-embedded=true] .game-board {grid-area:board;align-self:center;width:min(100%,calc((100dvh - 32px)*17/19));margin:auto;}
html[data-embedded=true] .game-controls {grid-area:controls;align-self:end;}
html[data-embedded=true] .game-status {grid-area:status;margin:0;}
html[data-embedded=true] .game-underboard {grid-area:under;margin:0;}
html[data-embedded=true] .reward-heading strong {font-size:13px;}
html[data-embedded=true] #game-reward-status,html[data-embedded=true] .reward-terms {font-size:11px;}
html[data-embedded=true] .reward-heading>span {font-size:9px;}
.direction-pad button {min-width:44px;min-height:44px;touch-action:none;}
.direction-pad {grid-template-rows:repeat(3,44px);}
@media(max-width:700px){
 html[data-embedded=true] .arcade-main {height:auto;min-height:100dvh;padding:8px 10px max(8px,env(safe-area-inset-bottom));}
 html[data-embedded=true] .arcade-play {display:flex;flex-direction:column;gap:5px;height:auto;}
 html[data-embedded=true] .game-reward {width:100%;padding:7px 10px;}
 html[data-embedded=true] .reward-heading strong {font-size:10px;}
 html[data-embedded=true] .reward-heading>span {font-size:8px;}
 html[data-embedded=true] #game-reward-status {font-size:9px;margin:3px 0;}
 html[data-embedded=true] .reward-terms {font-size:9px;}
 html[data-embedded=true] .reward-meter {margin-top:5px;}
 html[data-embedded=true] .game-hud {width:100%;padding:3px 0;}
 html[data-embedded=true] .game-hud>div {gap:3px;}
 html[data-embedded=true] .game-hud b {font-size:24px;}
 html[data-embedded=true] .game-toolbar {width:100%;padding:3px 0;}
 html[data-embedded=true] .game-board {width:min(100%,max(220px,calc((100dvh - 265px)*17/19)));}
 html[data-embedded=true] .game-controls {display:flex;width:100%;justify-content:center;margin:3px 0;}
 html[data-embedded=true] .touch-hint {display:none;}
 html[data-embedded=true] .direction-pad {width:100%;max-width:360px;grid-template-columns:repeat(4,1fr);grid-template-rows:50px;gap:8px;}
 html[data-embedded=true] .direction-pad button {grid-area:auto;}
 html[data-embedded=true] .direction-pad button[data-direction=left] {order:1;}
 html[data-embedded=true] .direction-pad button[data-direction=down] {order:2;}
 html[data-embedded=true] .direction-pad button[data-direction=up] {order:3;}
 html[data-embedded=true] .direction-pad button[data-direction=right] {order:4;}
 html[data-embedded=true] .direction-pad>span {display:none;}
 html[data-embedded=true] .game-underboard {width:100%;font-size:8px;}
 html[data-embedded=true] .game-status {font-size:9px;}
}
