/* Un escenario grande y cuatro retos conservados: duplicar o repartir para comprender. */
.aabn-app.aabn-board .aabn-da-game { display:flex; flex:1 0 auto; flex-direction:column; gap:12px; min-width:0; }
.aabn-app.aabn-board .aabn-da-tools { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.aabn-app.aabn-board .aabn-da-tools > span { color:#5e4b6c; font-size:18px; font-weight:750; }
.aabn-app.aabn-board .aabn-da-field { position:relative; display:flex; flex:1 0 auto; min-width:0; min-height:340px; border:2px solid #d1d9d2; border-radius:28px; overflow:hidden; background:linear-gradient(#f8f6fd,#f7fcf6); }
.aabn-app.aabn-board .aabn-da-scenery { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:.55; }
.aabn-app.aabn-board .aabn-da-stage { position:relative; z-index:1; display:flex; flex:1; flex-direction:column; justify-content:center; align-items:center; gap:12px; padding:20px clamp(12px,3vw,40px) 24px; min-width:0; }
.aabn-app.aabn-board .aabn-da-stage-title { display:flex; align-items:center; justify-content:center; gap:14px; }
.aabn-app.aabn-board .aabn-da-stage-title > strong { color:#4e3a62; font-size:clamp(23px,2.6vw,40px); font-weight:900; line-height:1.15; }
.aabn-app.aabn-board .aabn-da-round { padding:5px 11px; border:1px solid #c3b5d2; border-radius:14px; color:#5e4b6c; background:#fff; font-size:18px; font-weight:850; }
.aabn-app.aabn-board .aabn-da-source { display:grid; grid-template-columns:auto minmax(100px,1fr); align-items:center; justify-content:center; gap:8px 16px; width:min(100%,450px); }
.aabn-app.aabn-board .aabn-da-source-number { font-size:clamp(35px,4vw,60px); font-weight:900; color:#5d4c78; }
.aabn-app.aabn-board .aabn-da-tray { display:grid; place-items:center; min-height:58px; padding:8px 14px; border:2px solid #baa6d1; border-radius:20px; background:#fff; }
.aabn-app.aabn-board .aabn-da-split { grid-column:1/-1; font-size:29px; color:#846ba0; line-height:.7; text-align:center; }
.aabn-app.aabn-board .aabn-da-pair { display:grid; grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr); align-items:end; gap:14px; width:min(100%,860px); }
.aabn-app.aabn-board .aabn-da-friend { position:relative; min-width:0; padding-top:48px; }
.aabn-app.aabn-board .aabn-da-buddy { position:absolute; top:0; left:50%; transform:translateX(-50%); display:block; width:95px; height:78px; }
.aabn-app.aabn-board .aabn-da-buddy > svg { width:100%; height:100%; }
.aabn-app.aabn-board .aabn-da-basket { position:relative; z-index:1; display:grid; place-items:center; min-height:124px; padding:20px 12px; border:3px solid #b57f49; border-bottom-width:8px; border-radius:15px 15px 32px 32px; background:repeating-linear-gradient(0deg,#fff5db 0 13px,#f4e4bb 13px 15px); box-shadow:0 6px 0 #dfd3b7; }
.aabn-app.aabn-board .aabn-da-friend:last-child .aabn-da-basket { border-color:#478a7d; background:repeating-linear-gradient(0deg,#eff9ef 0 13px,#dfeedd 13px 15px); }
.aabn-app.aabn-board .aabn-da-basket.is-waiting { border-style:dashed; background:#fff; }
.aabn-app.aabn-board .aabn-da-basket.is-waiting { padding:8px 12px; }
.aabn-app.aabn-board .aabn-da-number-entry { display:grid; justify-items:center; gap:2px; width:100%; min-width:0; padding-top:18px; color:#386b5c; text-align:center; }
.aabn-app.aabn-board .aabn-da-number-entry > span { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.aabn-app.aabn-board .aabn-da-number-entry > small { font-size:12px; font-weight:700; line-height:1; }
.aabn-app.aabn-board .aabn-da-number-entry > input { width:min(100%,110px); min-width:0; min-height:58px; padding:2px 8px; border:2px solid #4e9080; border-radius:14px; color:#225e4e; background:#f1fff8; font-size:40px; font-weight:900; line-height:1.1; text-align:center; }
.aabn-app.aabn-board .aabn-da-number-entry > input[aria-invalid="true"] { border-color:#b54444; background:#fff0ee; }
.aabn-app.aabn-board .aabn-da-number-entry > input:focus { outline:3px solid #f3c65b; outline-offset:3px; }
.aabn-app.aabn-board .aabn-da-empty { font-size:36px; font-weight:850; color:#8b8c85; }
.aabn-app.aabn-board .aabn-da-basket-value { display:block; margin-top:6px; font-size:30px; color:#185c43; }
.aabn-app.aabn-board .aabn-da-equal { align-self:center; margin-top:48px; font-size:39px; font-weight:850; color:#7f6e94; text-align:center; }
.aabn-app.aabn-board .aabn-da-pieces { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:7px; min-width:0; }
.aabn-app.aabn-board .aabn-da-unit { display:block; width:19px; height:19px; border:2px solid #c4752d; border-radius:50%; background:#ffcf64; box-shadow:inset 0 0 0 3px #ffe7a0; }
.aabn-app.aabn-board .aabn-da-ten { display:grid; place-items:center; width:30px; height:44px; border:2px solid #9e803b; border-radius:7px; background:repeating-linear-gradient(0deg,#f3d580 0 3px,#b58d41 3px 4px); }
.aabn-app.aabn-board .aabn-da-ten b { padding:0 2px; border-radius:4px; font-size:16px; color:#59400c; background:#fff5d9; }
.aabn-app.aabn-board .aabn-da-play-actions { display:flex; justify-content:center; gap:8px; margin-top:4px; }
.aabn-app.aabn-board .aabn-da-play { justify-content:center; min-height:54px; color:#fff; border:2px solid #6e5294; border-radius:18px; background:#7959a5; box-shadow:0 4px 0 #d7cbe7; font-size:18px; font-weight:850; }
.aabn-app.aabn-board .aabn-da-play:disabled { opacity:1; color:#245e44; background:#e4f3e6; border-color:#77a58c; box-shadow:none; }
.aabn-app.aabn-board .aabn-da-reset { min-width:48px; min-height:54px; padding:8px; border:2px solid #cabbd9; color:#625079; background:#fff; }
.aabn-app.aabn-board .aabn-da-prompt { margin:0; color:#554660; font-size:17px; font-weight:750; text-align:center; }
.aabn-app.aabn-board .aabn-da-challenges { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.aabn-app.aabn-board .aabn-da-challenge { position:relative; display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:5px 10px; min-width:0; padding:12px 10px; border:2px solid #d5c9df; border-radius:20px; background:#fff; }
.aabn-app.aabn-board .aabn-da-challenge.is-active { border-color:#8464a4; background:#f7f2ff; box-shadow:0 4px 0 #ded1ea; }
.aabn-app.aabn-board .aabn-da-challenge-number { position:absolute; left:5px; top:4px; font-size:12px; font-weight:850; color:#786288; }
.aabn-app.aabn-board .aabn-da-expression { display:flex; align-items:center; gap:5px; color:#514065; font-size:clamp(22px,2.4vw,36px); font-weight:900; }
.aabn-app.aabn-board .aabn-da-expression > small { font-size:.65em; }
.aabn-app.aabn-board .aabn-da-expression > b { font-size:.7em; font-weight:700; color:#8f7e9b; }
.aabn-app.aabn-board input.aabn-da-answer { width:84px; min-height:62px; border:2px dashed #a78ebc; border-radius:13px; color:#4e365e; background:#fff; font-size:34px; }
.aabn-app.aabn-board.aabn-reduced-stimuli .aabn-da-scenery { display:none; }
.aabn-app.aabn-board.aabn-reduced-stimuli :is(.aabn-da-field,.aabn-da-challenge,.aabn-da-basket) { box-shadow:none; background:#fff; }
.aabn-app.aabn-board.aabn-high-contrast :is(.aabn-da-field,.aabn-da-tray,.aabn-da-basket,.aabn-da-challenge,.aabn-da-play,.aabn-da-reset,input.aabn-da-answer,.aabn-da-number-entry > input) { border-color:#000; }
.aabn-app.aabn-board.aabn-high-contrast :is(.aabn-da-stage-title > strong,.aabn-da-source-number,.aabn-da-prompt,.aabn-da-expression,.aabn-da-tools > span) { color:#000; }
@media (prefers-reduced-motion:no-preference) { .aabn-app.aabn-board .aabn-da-pair.is-copied .aabn-da-friend:last-child .aabn-da-pieces { animation:aabn-da-appear .32s ease-out both; } }
@keyframes aabn-da-appear { from { transform:scale(.75); opacity:0; } to { transform:scale(1); opacity:1; } }
@media screen and (max-width:1200px) and (min-width:769px) {
 .aabn-app.aabn-board .aabn-da-tools > span { display:none; }
 .aabn-app.aabn-board .aabn-da-field { min-height:340px; }
 .aabn-app.aabn-board .aabn-da-stage { gap:9px; padding:14px 12px; }
 .aabn-app.aabn-board .aabn-da-pair { gap:8px; grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr); }
 .aabn-app.aabn-board .aabn-da-basket { min-height:110px; padding:13px 8px; }
 .aabn-app.aabn-board .aabn-da-challenges { gap:7px; }
 .aabn-app.aabn-board .aabn-da-challenge { padding:11px 6px 6px; gap:5px; }
 .aabn-app.aabn-board input.aabn-da-answer { width:75px; min-height:56px; font-size:30px; }
 .aabn-app.aabn-board .aabn-da-play { font-size:16px; }
 .aabn-app.aabn-board .aabn-da-stage:has(.is-half) { padding:10px 12px; gap:6px; }
 .aabn-app.aabn-board .aabn-da-stage:has(.is-half) .aabn-da-stage-title > strong { font-size:24px; }
 .aabn-app.aabn-board .aabn-da-stage:has(.is-half) .aabn-da-round { font-size:15px; }
 .aabn-app.aabn-board .aabn-da-source { gap:4px 12px; }
 .aabn-app.aabn-board .aabn-da-source-number { font-size:34px; line-height:1; }
 .aabn-app.aabn-board .aabn-da-tray { height:48px; min-height:48px; padding:4px 8px; }
 .aabn-app.aabn-board .aabn-da-source .aabn-da-ten { height:30px; width:23px; }
 .aabn-app.aabn-board .aabn-da-source .aabn-da-pieces { gap:3px; }
 .aabn-app.aabn-board .aabn-da-source .aabn-da-unit { width:13px; height:13px; }
 .aabn-app.aabn-board .aabn-da-source .aabn-da-empty { font-size:28px; line-height:1; }
 .aabn-app.aabn-board .aabn-da-split { font-size:20px; }
 .aabn-app.aabn-board .is-half .aabn-da-friend { padding-top:32px; }
 .aabn-app.aabn-board .is-half .aabn-da-buddy { width:74px; height:60px; }
 .aabn-app.aabn-board .is-half .aabn-da-basket { min-height:88px; padding:10px 8px; }
 .aabn-app.aabn-board .is-half .aabn-da-empty { font-size:28px; line-height:1; }
 .aabn-app.aabn-board .aabn-da-stage:has(.is-half) .aabn-da-prompt { font-size:15px; line-height:1.2; }
}
@media screen and (max-width:768px) {
 .aabn-app.aabn-board .aabn-da-tools > span { display:none; }
 .aabn-app.aabn-board .aabn-da-field { min-height:340px; border-radius:22px; }
 .aabn-app.aabn-board .aabn-da-stage { padding:16px 8px; gap:12px; }
 .aabn-app.aabn-board .aabn-da-stage-title { gap:7px; }
 .aabn-app.aabn-board .aabn-da-stage-title > strong { font-size:21px; }
 .aabn-app.aabn-board .aabn-da-round { font-size:14px; padding:4px 6px; }
 .aabn-app.aabn-board .aabn-da-pair { gap:5px; grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr); }
 .aabn-app.aabn-board .aabn-da-buddy { width:74px; }
 .aabn-app.aabn-board .aabn-da-basket { min-height:115px; padding:15px 6px; border-width:2px; border-bottom-width:5px; }
 .aabn-app.aabn-board .aabn-da-equal { font-size:26px; }
 .aabn-app.aabn-board .aabn-da-unit { width:15px; height:15px; }
 .aabn-app.aabn-board .aabn-da-pieces { gap:4px; }
 .aabn-app.aabn-board .aabn-da-ten { width:23px; height:39px; }
 .aabn-app.aabn-board .aabn-da-source { gap:8px; }
 .aabn-app.aabn-board .aabn-da-play { padding:8px; font-size:14px; }
 .aabn-app.aabn-board .aabn-da-play > svg { width:19px; }
 .aabn-app.aabn-board .aabn-da-prompt { font-size:14px; }
 .aabn-app.aabn-board .aabn-da-challenges { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .aabn-app.aabn-board .aabn-da-challenge { padding:15px 6px 8px; }
 .aabn-app.aabn-board .aabn-da-expression { font-size:23px; }
 .aabn-app.aabn-board input.aabn-da-answer { width:70px; min-height:54px; font-size:29px; }
}
/* Los amigos asoman por delante de sus cestas; sus caras quedan siempre visibles. */
.aabn-app.aabn-board .aabn-da-buddy { z-index:2; pointer-events:none; }
@media screen and (min-width:1201px) {
 .aabn-app.aabn-board .aabn-da-unit { width:25px; height:25px; }
}
@media screen and (min-width:1201px) and (min-height:950px) {
 .aabn-app.aabn-board .aabn-da-friend { padding-top:64px; }
 .aabn-app.aabn-board .aabn-da-buddy { width:125px; height:102px; }
 .aabn-app.aabn-board .aabn-da-basket { min-height:166px; }
 .aabn-app.aabn-board .aabn-da-unit { width:28px; height:28px; }
 .aabn-app.aabn-board .aabn-da-ten { width:38px; height:54px; }
}
