/* Shared chrome tokens. Pedagogical colours and manipulatives stay in each view. */
.aw-app{--aui-brand:#087d70;--aui-brand-hover:#06695f;--aui-text:#234b50;--aui-border:#cddfda;--aui-soft:#eaf6f0;--aui-radius:12px;--aui-focus:#138b78}
.aw-app .aui-window>.aw-window-header{height:48px;min-height:48px;padding:1px 6px 1px 12px;gap:8px;background:#f7faf7;border-bottom:1px solid #e2ece6}
.aw-app .aui-window .aw-window-handle{padding-block:2px;gap:8px}
.aw-app .aui-window .aw-window-header h2{font-size:16px;line-height:1.2}
.aw-app .aui-window .aw-drag-dots{font-size:23px}
.aw-app .aui-window .aw-window-buttons{gap:0}
.aw-app .aui-window .aw-window-buttons button{width:44px!important;min-width:44px;min-height:44px;height:44px;padding:10px!important;border-radius:10px}
.aw-app .aui-activity{position:relative}
.aw-app .aui-activity .aui-top{display:flex;align-items:center;justify-content:space-between;flex:none;flex-wrap:wrap;gap:10px;margin:0 0 10px;padding:0;width:100%;min-height:48px}
.aw-app .aui-top .aui-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto;min-width:0;max-width:100%}
.aw-app .aui-top .aui-modes{display:flex;align-items:center;gap:4px;padding:4px;border-radius:15px;background:#f0f6f3;max-width:100%;flex-wrap:wrap;min-width:0}
.aw-app .aui-top .aui-control,.aw-app .aui-panel .aui-control{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:48px;height:auto;padding:10px 14px;border:1px solid var(--aui-border);border-radius:var(--aui-radius);background:#fff;color:var(--aui-text);font-family:inherit;font-size:16px;font-weight:600;line-height:1.2;box-shadow:none;touch-action:manipulation;cursor:pointer;text-decoration:none;text-transform:none;letter-spacing:normal}
.aw-app .aui-top .aui-control{font-family:inherit;font-size:16px;font-weight:650;line-height:1.2}
.aw-app .aui-top .aui-control:hover,.aw-app .aui-panel .aui-control:hover{background:#f1faf5;border-color:#9ec8bc}
.aw-app .aui-top .aui-control svg,.aw-app .aui-panel .aui-control svg{width:23px;height:23px;flex:none;pointer-events:none}
.aw-app .aui-top .aui-icon{width:48px;padding:10px;margin:0;flex:none}
.aw-app .aui-top .aui-modes>.aui-control{background:transparent;border-color:transparent;min-height:44px;padding:9px 12px}
.aw-app .aui-top .aui-control[aria-pressed=true],.aw-app .aui-top .aui-control[aria-expanded=true]{background:var(--aui-soft);border-color:#8ac2b2;color:#087568;box-shadow:inset 0 0 0 1px #8ac2b240}
.aw-app .aui-top .aui-primary{background:var(--aui-brand);border-color:var(--aui-brand);color:#fff}
.aw-app .aui-top .aui-primary:hover{background:var(--aui-brand-hover);border-color:var(--aui-brand-hover);color:#fff}
.aw-app .aui-top [data-aui-action=bank]{order:1}.aw-app .aui-top [data-aui-action=random]{order:10}.aw-app .aui-top [data-aui-action=check]{order:20}.aw-app .aui-top [data-aui-action=next]{order:30}.aw-app .aui-top [data-aui-action=options]{order:40}
.aw-app .aui-activity :is(.aui-control,.aui-panel button,.aui-panel summary,.aui-panel input,.aui-panel select,.aui-panel textarea):focus-visible,.aw-app .aui-window .aw-window-buttons button:focus-visible{outline:3px solid var(--aui-focus);outline-offset:-3px}
.aw-app .aui-panel{position:absolute;z-index:45;right:8px;left:auto;bottom:auto;width:350px;max-width:calc(100% - 16px);margin:0;padding:14px;border:1px solid var(--aui-border);border-radius:18px;background:#fff;box-shadow:0 12px 34px #173f3324;overflow:auto;overscroll-behavior:contain;color:var(--aui-text);text-align:left}
.aw-app .aui-panel.is-wide{width:780px}
.aw-app .aui-panel[hidden],.aw-app .aui-source[hidden]{display:none!important}
.aw-app .aui-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding:0}
.aw-app .aui-panel>header>strong{font-size:22px;line-height:1.2}
.aw-app .aui-panel>header button{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;width:44px;padding:9px;border:0;border-radius:10px;background:transparent;color:#587a79;font-size:24px}
.aw-app .aui-panel :is(button,summary,select,input:not([type=checkbox])){min-height:44px}
.aw-app .aui-panel :is(.aw-tools-section,.aui-menu-section){display:flex;flex-direction:column;gap:7px;margin:0;padding:12px 0;border-top:1px solid #e4eeea}
.aw-app .aui-panel :is(.aw-tools-section,.aui-menu-section)>h3{margin:0 0 3px;font-size:12px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#648583;line-height:1.4}
.aw-app .aui-panel .aui-menu-section>.aui-control,.aw-app .aui-panel .aui-compare>.aui-control,.aw-app .aui-panel .aui-compare-list>.aui-control{justify-content:flex-start;width:100%;min-height:48px;font-size:16px;text-align:left}
.aw-app .aui-panel .aui-menu-section>.aui-control:after,.aw-app .aui-panel .aui-compare>.aui-control:after{content:'›';margin-left:auto;font-size:23px;color:#648884}
.aw-app .aui-panel .aui-compare{display:block;padding:0;margin:0;border:0;background:transparent}
.aw-app .aui-panel .aui-compare>summary{list-style:none}.aw-app .aui-panel .aui-compare>summary::-webkit-details-marker{display:none}
.aw-app .aui-panel .aui-compare[open]>summary{background:var(--aui-soft);border-color:#9bcdbd}
.aw-app .aui-panel .aui-compare-list{display:flex;flex-direction:column;gap:6px;padding:8px 0 0 12px}
.aw-app .aui-panel .aui-compare-label{margin:6px 0 2px;color:#648583;font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.aw-app .aui-panel .aui-compare-new,.aw-app .aui-panel .aui-compare-catalog{display:flex;flex-direction:column;gap:6px}
.aw-app .aui-panel .aui-compare-new{margin-top:4px}
.aw-app .aui-panel .aui-compare-new .aui-control{width:100%;min-height:48px;justify-content:flex-start;text-align:left}
.aw-app .aui-panel .aui-compare-same{background:var(--aui-soft);border-color:#9bcdbd}
.aw-app .aui-panel .aui-compare-area{padding:0;border:0;background:transparent}
.aw-app .aui-panel .aui-compare-area>summary{list-style:none}
.aw-app .aui-panel .aui-compare-area>summary::-webkit-details-marker{display:none}
.aw-app .aui-panel .aui-compare-area>summary:after{content:'›';margin-left:auto;font-size:23px}
.aw-app .aui-panel .aui-compare-area[open]>summary{background:var(--aui-soft)}
.aw-app .aui-panel .aui-compare-catalog{padding:6px 0 0 10px}
.aw-app .aui-panel .aui-empty{margin:4px 0;font-size:15px;line-height:1.4;color:#5d7774}
.aw-app .aui-panel .aw-lang-settings{margin:0;padding:0;border:0;position:static;width:100%;background:none}.aw-app .aui-panel .aw-lang-settings-form{padding:0}
.aw-app .aui-activity :is(.aw-roman-actions,.aw-round-actions,.anp-bottom-buttons,.aw-morph-bottom){min-height:0}
@media(max-width:760px){.aw-app .aui-top .aui-actions{gap:5px}.aw-app .aui-top .aui-control{font-size:14px;min-height:46px;padding:9px 10px}.aw-app .aui-top .aui-icon{width:46px;min-width:46px;padding:10px}.aw-app .aui-top .aui-modes>.aui-control{padding:8px 10px;min-height:44px}.aw-app .aui-panel{padding:12px}.aw-app .aui-window .aw-window-header h2{font-size:14px}}
@media(max-width:450px){.aw-app .aui-activity .aui-top{gap:7px}.aw-app .aui-top .aui-actions{width:100%;margin-left:0;justify-content:flex-end}.aw-app .aui-top .aui-modes{width:100%;justify-content:flex-start}.aw-app .aui-top .aui-control{font-size:13px;padding-inline:9px}.aw-app .aui-top .aui-icon{padding:10px}.aw-app .aui-window>.aw-window-header{padding-left:9px;gap:3px}.aw-app .aui-window .aw-drag-dots{display:none}}
@media print{.aw-app .aui-top,.aw-app .aui-panel{display:none!important}}

/* A solved exercise keeps the child's work visible. The next challenge is an
   explicit, compact header action; celebration neither blocks input nor moves
   the page. It is intentionally absent for tools and partially correct work. */
.aw-app .aui-activity[data-aui-success=true] .aui-top :is([data-aui-action=check],[data-aui-action=next]){display:none!important}
.aw-app .aui-top .aui-success-action{order:30;background:var(--aui-brand);border-color:var(--aui-brand);color:white;white-space:nowrap}
.aw-app .aui-success-label-short{display:none}
.aw-app .aui-top .aui-success-action:before{content:'✓';display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;flex:none;border-radius:50%;background:#ffffff25;font-weight:800}
.aw-app .aui-top .aui-success-action>svg{width:17px;height:17px;order:2;margin-left:0}
.aw-app .aui-confetti{position:absolute;width:0;height:0;z-index:35;pointer-events:none;overflow:visible}
.aw-app .aui-confetti i{position:absolute;display:block;width:7px;height:11px;background:var(--aui-color);border-radius:2px;opacity:0;animation:aui-celebrate 750ms cubic-bezier(.12,.65,.5,1) var(--aui-delay) both}
.aw-app .aui-confetti i:nth-child(3n){border-radius:50%;width:8px;height:8px}
@keyframes aui-celebrate{0%{opacity:0;transform:translate(-3px,-4px) rotate(0)}12%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(var(--aui-x),var(--aui-y)) rotate(var(--aui-rotate))}}
@container (max-width:560px){.aw-app .aui-success-label-long{display:none}.aw-app .aui-success-label-short{display:inline}.aw-app .aui-top .aui-success-action:before{display:none}}
@media(max-width:450px){.aw-app .aui-success-label-long{display:none}.aw-app .aui-success-label-short{display:inline}.aw-app .aui-top .aui-success-action:before{display:none}}
@media(prefers-reduced-motion:reduce){.aw-app .aui-confetti{display:none}.aw-app .aui-confetti i{animation:none}}
@media print{.aw-app .aui-confetti{display:none!important}}

@container aop (max-width:450px){.aw-app .aui-top .aop-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.aw-app .aui-top .aop-tabs>.aui-control{white-space:nowrap;min-width:0}.aw-app .aui-top .aop-placement-toggle{width:46px;min-width:46px;padding:10px}.aw-app .aui-top .aop-placement-toggle .aui-label{display:none}}

.aw-app .aui-media-root{height:100%;display:flex;flex-direction:column;padding:8px}.aw-app .aui-media-root>.aw-material-image{min-height:0;flex:1;height:0}
.aw-app .aui-top .aop-abn-app{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;text-decoration:none;font-size:14px;color:var(--aui-brand);border-color:#b7d5cb;background:white}
@container aop (max-width:450px){.aw-app .aui-top .aop-tabs>.aop-abn-app{grid-column:1/-1}}
/* A wrapped activity header leaves less height on classroom laptops. Keep the
   full number pad, including navigation, visible beside the calculation. */
@media(max-height:800px){
 @container aop (min-width:561px){
  .aw-app .aui-activity .aop-direct-editor{display:grid;grid-template-columns:minmax(0,1fr) 64px 44px;gap:5px;padding:8px}
  .aw-app .aui-activity .aop-direct-header{display:contents}
  .aw-app .aui-activity .aop-direct-label{grid-column:1;grid-row:1;display:flex;align-items:center;min-height:44px;font-size:11px}
  .aw-app .aui-activity .aop-direct-display{grid-column:2;grid-row:1;min-width:0;min-height:44px;padding:5px;font-size:24px}
  .aw-app .aui-activity .aop-direct-close{grid-column:3;grid-row:1;min-width:44px;min-height:44px}
  .aw-app .aui-activity .aop-direct-keys{grid-column:1/-1;grid-row:2}
  .aw-app .aui-activity .aop-direct-nav{grid-column:1/-1;grid-row:3}
  .aw-app .aui-activity .aop-direct-hint{grid-column:1/-1;grid-row:4}
  .aw-app .aui-activity .aop-direct-hint:empty{display:none}
 }
}
