.activity-target{border-radius:var(--activity-radius,3px)}.activity-target.activity-no-frame:not(.is-wrong):not(.is-right):not(.is-target){border:0;box-shadow:none}.activity-target.activity-no-frame.is-target{border:0}
.activity-house-roof{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.activity-house-number{border:0!important;background:transparent!important}

.activity-target.activity-tap{
 border:1px solid #86b5c2;
 background:#087f9509;
 border-radius:6px;
}
.activity-target.activity-tap:hover,
.activity-target.activity-tap:focus-visible{
 border-color:#087f95;
 background:#087f9514;
}
.activity-target.activity-tap.is-wrong{border-color:#b34b53}
.activity-target.activity-tap.is-right{border-color:#24866b}
.activity-tap .activity-tick{
 top:0;
 right:0;
 transform:translate(30%,-30%);
 width:clamp(11px,2.4cqw,20px);
 height:clamp(11px,2.4cqw,20px);
 box-sizing:border-box;
 font-size:clamp(9px,1.7cqw,14px);
 color:white;
 background:white;
 border:1.5px solid #087f95;
 pointer-events:none;
}
.activity-tap.is-chosen .activity-tick{background:#087f95}
.activity-tap.is-wrong.is-chosen .activity-tick{background:#b34b53;border-color:#b34b53}

.activity-target.activity-tap-text,
.activity-target.activity-tap-image{
 border:0;
 background:transparent;
}
.activity-target.activity-tap-text:is(:hover,:focus-visible,.is-chosen) .text-box-frame{
 filter:brightness(.95);
}
.activity-target.activity-tap-text.is-wrong .text-box-frame{stroke:#b34b53}
.activity-target.activity-tap-text.is-right .text-box-frame{stroke:#24866b}

.activity-target.activity-tap-image.is-wrong .activity-tap-image-frame{stroke:#b34b53}
.activity-target.activity-tap-image.is-right .activity-tap-image-frame{stroke:#24866b}

.activity-task .activity-target.activity-number-target{
 background:var(--activity-number-answer-fill);
}
.activity-number-target .activity-empty{color:#467484}

.memory-play-toolbar{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.85rem}
.memory-play-toolbar:has(.memory-status:empty):not(:has(select)){display:none}
.memory-status:empty{display:none}
.memory-play-toolbar label{display:flex;align-items:center;gap:6px}
.memory-play-toolbar select{width:auto}
.memory-play-area{position:relative;container-type:size;flex:1;min-height:0;width:100%;max-width:1200px;margin:auto;display:grid;place-items:center;--memory-side:clamp(46px,10%,100px)}
.memory-play-area .activity-sheet{margin:0;width:min(calc(100% - 2 * var(--memory-side)),calc((100cqh - 2px) * var(--memory-sheet-ratio)));box-sizing:border-box}
.memory-grid,.memory-game-card{position:absolute}
.memory-game-card{padding:0;min-width:0;min-height:0;border:1px solid #93bac6;border-radius:7px;background:#edf8f8;overflow:hidden;touch-action:manipulation}
.memory-game-card[hidden]{display:none}
.memory-game-card.is-open{background:white;border-color:#087f95;opacity:1}
.memory-game-card>img{display:block;width:100%;height:100%;padding:12%;box-sizing:border-box;object-fit:contain;pointer-events:none}
.memory-game-card>svg,.memory-stack>svg{display:block;width:100%;height:100%;pointer-events:none}
.memory-piles{position:absolute;inset:0;pointer-events:none}
.memory-pile{position:absolute;display:grid;justify-items:center;gap:5px;text-align:center;font-size:clamp(9px,1.5vw,13px);width:clamp(47px,9vw,92px);padding:5px 2px;border-radius:8px}
.memory-pile.is-current{background:#d9f1ef}
.memory-pile.bottom-left{bottom:0;left:0}.memory-pile.bottom-right{bottom:0;right:0}
.memory-pile.top-left{top:0;left:0}.memory-pile.top-right{top:0;right:0}
.memory-stack{width:70%;aspect-ratio:1;border:1px dashed #77a9b6;border-radius:5px;background:white}
.memory-stack:has(svg){border-style:solid;box-shadow:2px 2px #d1e8ee,4px 4px #91b6c4}

.ipad-simulation #app:has(.memory-task){overflow:hidden}
.player:has(.memory-task),.file-player:has(.memory-task){height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:5px;padding-block:8px}
.player:has(.memory-task) .player-header,.player:has(.memory-task) .player-progress,.player:has(.memory-task) .player-actions,.player:has(.memory-task) .instruction,.player:has(.memory-task) .task-dots{margin-block:0}
.player:has(.memory-task) .instruction{max-height:3em;overflow:auto}
.player:has(.memory-task) .task-dots{overflow-x:auto;justify-content:safe center}
.player:has(.memory-task) .task-dots button{flex-shrink:0}
.play-task.memory-task{display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;padding:0;border:0;background:transparent}
.memory-pile{width:var(--memory-side);box-sizing:border-box}
.memory-game-card.is-wrong::after{content:'';position:absolute;inset:0;border:3px solid #c73c44;border-radius:inherit;pointer-events:none}
.memory-success{box-sizing:border-box;max-width:min(460px,90vw);max-height:95dvh;text-align:center;padding:clamp(10px,4vh,30px);border:1px solid #badbc7;border-radius:18px;color:#173c51;background:#f4fbf6}
.memory-success::backdrop{background:#173c5180}
.memory-success img{width:auto;height:min(26dvh,160px);object-fit:contain}
.memory-success h2{margin:0}
.memory-success p{margin:8px 0 14px}

