/* Real learning evidence presented as a calm, touch-friendly adventure menu. */
.aabn-app.aabn-board .aabn-progress-arcade {
	--arcade-ink:#14394c;
	position:relative; isolation:isolate; display:grid; align-content:start; gap:22px;
	min-width:0; min-height:calc(100dvh - 180px); padding:8px 10px 60px;
	color:var(--arcade-ink); background:radial-gradient(circle,#cfdfdb .7px,transparent .9px) 0 0/22px 22px;
}
.aabn-app.aabn-board .aabn-progress-arcade > :not(.aabn-arcade-scenery) { position:relative; z-index:1; min-width:0; }
.aabn-app.aabn-board .aabn-arcade-scenery { position:absolute; inset:auto 0 -24px; z-index:0; pointer-events:none; opacity:.7; }
.aabn-app.aabn-board .aabn-arcade-scenery svg { display:block; width:100%; height:130px; }
.aabn-app.aabn-board .aabn-arcade-player { display:flex; align-items:center; gap:22px; padding:16px 22px; border:1px solid #cbded6; border-radius:26px; background:linear-gradient(115deg,#f3fbf2,#fff 65%); box-shadow:0 5px 0 #e1ece5; }
.aabn-app.aabn-board .aabn-arcade-mascot { display:block; flex:0 0 112px; width:112px; height:108px; }
.aabn-app.aabn-board .aabn-arcade-mascot svg { display:block; width:100%; height:100%; }
.aabn-app.aabn-board .aabn-arcade-player .aabn-section-heading { display:flex; align-items:center; flex:1 1 auto; flex-wrap:wrap; gap:12px 28px; margin:0; }
.aabn-app.aabn-board .aabn-arcade-player .aabn-step-label { display:block; margin:0 0 3px; color:#376758; font-size:15px; font-weight:850; }
.aabn-app.aabn-board .aabn-arcade-player h3 { margin:0; color:var(--arcade-ink); font-size:clamp(25px,2.4vw,36px); line-height:1.15; overflow-wrap:anywhere; }
.aabn-app.aabn-board .aabn-arcade-player .aabn-alias-field { display:grid; gap:4px; margin:0; padding:0; background:transparent; border:0; }
.aabn-app.aabn-board .aabn-arcade-player .aabn-alias-field > span { color:#49665e; font-size:13px; }
.aabn-app.aabn-board .aabn-arcade-player select { min-width:150px; min-height:46px; max-width:100%; color:var(--arcade-ink); background:#fff; border:1px solid #97bdae; border-radius:12px; font-size:17px; }
.aabn-app.aabn-board .aabn-progress-arcade details > summary { display:flex; align-items:center; gap:10px; min-height:50px; padding:11px 16px; border:1px solid #b6d2c7; border-radius:14px; color:#1c564c; background:#fff; font-size:16px; font-weight:800; list-style:none; cursor:pointer; touch-action:manipulation; }
.aabn-app.aabn-board .aabn-progress-arcade summary::-webkit-details-marker { display:none; }
.aabn-app.aabn-board .aabn-progress-arcade summary > .aabn-icon { width:23px; height:23px; flex:0 0 auto; }
.aabn-app.aabn-board .aabn-arcade-chevron { margin-left:auto; font-size:24px; line-height:20px; }
.aabn-app.aabn-board .aabn-progress-arcade details[open] > summary .aabn-arcade-chevron { transform:rotate(180deg); }
.aabn-app.aabn-board .aabn-arcade-profile { flex:0 0 auto; position:relative; }
.aabn-app.aabn-board .aabn-arcade-profile .aabn-board-alias { position:absolute; z-index:3; top:calc(100% + 8px); right:0; display:grid; gap:12px; width:320px; padding:18px; border:1px solid #a7cdbd; border-radius:18px; background:#fff; box-shadow:0 10px 40px #133c3826; }
.aabn-app.aabn-board .aabn-arcade-profile .aabn-board-alias label { display:grid; gap:6px; min-width:0; font-size:15px; }
.aabn-app.aabn-board .aabn-arcade-profile input { width:100%; min-width:0; min-height:48px; background:#fff; border:1px solid #9bbcae; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:0; background:none; border-radius:0; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary > div { display:flex; align-items:center; gap:14px; padding:16px 20px; border:1px solid #c9ded7; border-radius:18px; background:#fff; box-shadow:0 4px 0 #e9f0ed; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary strong { flex:0 0 auto; font-size:33px; color:#08796f; line-height:1; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary span { margin:0; color:#36594f; font-size:15px; line-height:1.3; }
.aabn-app.aabn-board .aabn-arcade-map { display:grid; gap:20px; padding:20px 22px 18px; border:1px solid #c9dedd; border-radius:28px; background:linear-gradient(180deg,#f6fcffb8,#fffdf4a1); }
.aabn-app.aabn-board .aabn-arcade-map-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.aabn-app.aabn-board .aabn-arcade-map-heading h4 { margin:0; font-size:clamp(22px,2vw,30px); color:var(--arcade-ink); }
.aabn-app.aabn-board .aabn-arcade-map-heading p { margin:0; color:#496759; font-size:16px; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards { position:relative; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; padding:7px 0; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards::before { content:""; position:absolute; top:50%; left:3%; right:3%; height:40px; border-top:9px dotted #c5dcd6; transform:rotate(-2deg); z-index:-1; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card { --mission-color:#087d75; --mission-wash:#e2f5ed; position:relative; display:flex; flex-direction:column; align-items:stretch; gap:11px; min-width:0; min-height:308px; padding:18px 14px 14px; color:var(--arcade-ink); background:linear-gradient(155deg,#fff 30%,var(--mission-wash)); border:2px solid #c9e4dc; border-radius:25px; box-shadow:0 7px 0 var(--mission-wash),0 12px 24px #24483b0a; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card:nth-child(2) { --mission-color:#966110; --mission-wash:#fff0cc; border-color:#e7d4a5; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card:nth-child(3) { --mission-color:#b54062; --mission-wash:#ffe9ef; border-color:#edc4d0; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card:nth-child(4) { --mission-color:#146e98; --mission-wash:#e2f3ff; border-color:#bedce9; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card:nth-child(5) { --mission-color:#7142a6; --mission-wash:#f0e7ff; border-color:#d9c7ef; }
.aabn-app.aabn-board .aabn-arcade-flag { position:absolute; right:12px; top:12px; display:grid; place-items:center; width:29px; height:29px; border:1px solid currentColor; border-radius:50%; color:var(--mission-color); background:#fff; }
.aabn-app.aabn-board .aabn-arcade-flag > .aabn-icon { width:17px; height:17px; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card > div:first-of-type { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:12px; min-height:139px; text-align:center; font-size:clamp(18px,1.4vw,25px); }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card > div:first-of-type > span:last-child { overflow-wrap:anywhere; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon { width:85px; height:85px; border:4px solid #fff; border-radius:25px; color:var(--mission-color); background:var(--mission-wash); box-shadow:0 6px 0 #27483f0c; transform:rotate(-4deg); }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card:nth-child(even) .aabn-progress-card__icon { transform:rotate(4deg); }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon .aabn-icon { width:50px; height:50px; stroke-width:2.5; }
.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card .aabn-status { width:auto; align-self:center; padding:5px 10px; color:#214b42; background:#fff; border:1px solid #a9c9bb; border-radius:30px; font-size:14px; }
.aabn-app.aabn-board .aabn-arcade-stages { display:flex; justify-content:center; gap:10px; padding:0; }
.aabn-app.aabn-board .aabn-arcade-stages > span { display:grid; place-items:center; width:19px; height:19px; border:2px solid #78978b; border-radius:50%; color:#fff; background:#fff; }
.aabn-app.aabn-board .aabn-arcade-stages > span.is-reached { border-color:var(--mission-color); background:var(--mission-color); }
.aabn-app.aabn-board .aabn-arcade-stages .aabn-icon { width:13px; height:13px; }
.aabn-app.aabn-board .aabn-arcade-evidence { display:block; min-height:18px; margin:auto 0 0; color:#4c605a; font-size:13px; line-height:1.3; text-align:center; }
.aabn-app.aabn-board .aabn-arcade-play { display:flex; align-items:center; justify-content:center; gap:8px; min-width:44px; min-height:48px; padding:9px 12px; color:#fff; background:var(--mission-color); border:2px solid transparent; border-radius:15px; box-shadow:0 3px 0 #18382f24; font:inherit; font-size:17px; font-weight:850; cursor:pointer; touch-action:manipulation; }
.aabn-app.aabn-board .aabn-arcade-play .aabn-icon { width:19px; height:19px; }
.aabn-app.aabn-board .aabn-arcade-play:hover { filter:brightness(.94); }
.aabn-app.aabn-board .aabn-progress-arcade :is(button,summary,select,input):focus-visible { outline:3px solid #0a6570; outline-offset:4px; }
.aabn-app.aabn-board .aabn-arcade-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 24px; margin:0; padding:4px 0; list-style:none; }
.aabn-app.aabn-board .aabn-arcade-legend li { display:flex; align-items:center; gap:7px; color:#456252; font-size:13px; }
.aabn-app.aabn-board .aabn-arcade-legend li > span { display:grid; place-items:center; width:23px; height:23px; border:1px solid #b8d0c0; border-radius:50%; color:#2d5d47; background:#fff; font-size:12px; font-weight:800; }
.aabn-app.aabn-board .aabn-arcade-archive { width:100%; }
.aabn-app.aabn-board .aabn-arcade-archive[open] { display:grid; gap:14px; padding:0 0 14px; border:1px solid #bfd7cc; border-radius:16px; background:#fff; }
.aabn-app.aabn-board .aabn-arcade-archive[open] > :not(summary) { margin-inline:14px; }
.aabn-app.aabn-board .aabn-arcade-archive .aabn-progress-actions { grid-template-columns:repeat(4,minmax(0,1fr)); }
.aabn-app.aabn-board .aabn-arcade-archive .aabn-note { color:#3e5a50; background:#f6fbf7; border:1px solid #c9ded2; font-size:14px; }
.aabn-app.aabn-board.aabn-reduced-stimuli .aabn-arcade-scenery,
.aabn-app.aabn-board.aabn-reduced-stimuli .aabn-arcade-mascot { display:none; }
.aabn-app.aabn-board.aabn-reduced-stimuli .aabn-progress-arcade { background:none; }
.aabn-app.aabn-board.aabn-reduced-stimuli .aabn-progress-arcade * { box-shadow:none; transform:none; }
.aabn-app.aabn-board.aabn-high-contrast .aabn-progress-arcade :is(.aabn-arcade-player,.aabn-progress-card,.aabn-status,.aabn-progress-summary > div,summary,select,input,.aabn-arcade-map) { color:#000; border-color:#000; background:#fff; }
.aabn-app.aabn-board.aabn-high-contrast .aabn-arcade-play { color:#fff; background:#000; }
.aabn-app.aabn-board.aabn-high-contrast .aabn-progress-arcade :is(h3,h4,p,small,.aabn-step-label,.aabn-progress-summary span,.aabn-progress-summary strong,.aabn-arcade-legend li) { color:#000; }
@media (max-width:1200px) {
	.aabn-app.aabn-board .aabn-progress-arcade { gap:18px; padding-inline:0; }
	.aabn-app.aabn-board .aabn-arcade-player { gap:14px; padding:14px; }
	.aabn-app.aabn-board .aabn-arcade-mascot { flex-basis:85px; width:85px; height:85px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card { min-height:290px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary > div { padding:14px; gap:10px; }
}
@media (max-width:680px) {
	.aabn-app.aabn-board .aabn-progress-arcade { gap:14px; padding:0 0 32px; }
	.aabn-app.aabn-board .aabn-arcade-player { flex-wrap:wrap; gap:10px; padding:13px; border-radius:20px; }
	.aabn-app.aabn-board .aabn-arcade-mascot { flex-basis:65px; width:65px; height:65px; }
	.aabn-app.aabn-board .aabn-arcade-player .aabn-section-heading { flex-basis:calc(100% - 80px); gap:10px; }
	.aabn-app.aabn-board .aabn-arcade-player .aabn-step-label { font-size:12px; }
	.aabn-app.aabn-board .aabn-arcade-player h3 { font-size:23px; }
	.aabn-app.aabn-board .aabn-arcade-player .aabn-alias-field { width:100%; }
	.aabn-app.aabn-board .aabn-arcade-player select { min-width:0; width:100%; font-size:16px; }
	.aabn-app.aabn-board .aabn-arcade-profile { flex:1 1 100%; }
	.aabn-app.aabn-board .aabn-arcade-profile .aabn-board-alias { position:static; width:100%; margin-top:8px; box-shadow:none; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary > div { display:grid; justify-items:center; gap:6px; padding:11px 6px; border-radius:13px; text-align:center; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary strong { font-size:26px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary span { font-size:11px; }
	.aabn-app.aabn-board .aabn-arcade-map { gap:13px; padding:14px 10px; border-radius:20px; }
	.aabn-app.aabn-board .aabn-arcade-map-heading h4 { font-size:21px; }
	.aabn-app.aabn-board .aabn-arcade-map-heading p { font-size:13px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards { grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr)); gap:14px 10px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card { gap:9px; min-height:278px; padding:14px 9px 10px; border-radius:20px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card > div:first-of-type { min-height:123px; font-size:16px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon { width:67px; height:67px; border-radius:21px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon .aabn-icon { width:37px; height:37px; }
	.aabn-app.aabn-board .aabn-arcade-flag { top:6px; right:6px; width:23px; height:23px; }
	.aabn-app.aabn-board .aabn-arcade-flag .aabn-icon { width:14px; height:14px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card .aabn-status { padding:5px 7px; font-size:12px; }
	.aabn-app.aabn-board .aabn-arcade-stages { gap:5px; }
	.aabn-app.aabn-board .aabn-arcade-stages > span { width:17px; height:17px; }
	.aabn-app.aabn-board .aabn-arcade-evidence { min-height:29px; font-size:11px; }
	.aabn-app.aabn-board .aabn-arcade-play { gap:5px; padding:8px; font-size:16px; }
	.aabn-app.aabn-board .aabn-arcade-legend { justify-content:start; gap:8px 12px; }
	.aabn-app.aabn-board .aabn-arcade-legend li { font-size:11px; }
	.aabn-app.aabn-board .aabn-arcade-archive .aabn-progress-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.aabn-app.aabn-board .aabn-arcade-archive .aabn-progress-actions .aabn-button { padding:8px; font-size:13px; }
	.aabn-app.aabn-board .aabn-arcade-archive .aabn-note { font-size:12px; }
}
@media (max-width:360px) {
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards { grid-template-columns:1fr; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card { min-height:266px; }
}
@media print {
	.aabn-app.aabn-board .aabn-progress-arcade { display:block; min-height:0; padding:0; background:none; }
	.aabn-app.aabn-board .aabn-progress-arcade :is(.aabn-arcade-scenery,.aabn-arcade-mascot,.aabn-arcade-profile,.aabn-arcade-play,.aabn-progress-actions,.aabn-arcade-archive > summary) { display:none !important; }
	.aabn-app.aabn-board .aabn-arcade-player { padding:10px; box-shadow:none; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-summary { margin:10px 0; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-cards { grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card { min-height:0; padding:10px; break-inside:avoid; box-shadow:none; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card > div:first-of-type { min-height:0; font-size:16px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon { width:40px; height:40px; }
	.aabn-app.aabn-board .aabn-progress-arcade .aabn-progress-card__icon .aabn-icon { width:24px; height:24px; }
	.aabn-app.aabn-board .aabn-arcade-archive { display:block; margin-top:16px; border:0; }
	.aabn-app.aabn-board .aabn-arcade-archive > :not(summary) { margin-inline:0 !important; }
}
