/* V8.9.9 — Memory Loop: low-friction retrieval integrated into the visual study flow. */
.memory-pill{border:1px solid rgba(92,211,255,.22);border-radius:999px;background:rgba(15,33,49,.82);color:#bfeeff;padding:5px 10px;font:800 10px/1 system-ui;letter-spacing:.02em;cursor:pointer;white-space:nowrap}
.memory-pill:hover{border-color:rgba(92,211,255,.46);background:rgba(25,56,78,.9)}
.memory-pill:disabled{opacity:.5;cursor:wait}
.viewer-bottom.memory-nav{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
.viewer-bottom.memory-nav .nav-arrow:first-child{justify-self:stretch}
.viewer-bottom.memory-nav .nav-arrow:last-child{justify-self:stretch}
.nav-arrow.nav-primary{border-color:rgba(63,150,255,.38);background:linear-gradient(90deg,rgba(28,132,245,.72),rgba(104,78,240,.68));color:#fff}

/* Blur Recall: keep the visual architecture as a cue, remove readable detail. */
#viewer.focus-layout-v894.recall-active .viewer-body{position:relative!important;display:block!important;overflow:hidden!important}
#viewer.focus-layout-v894.recall-active .slide-zone{display:grid!important;position:absolute!important;inset:0!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;grid-template-areas:'visual'!important;padding:0!important;opacity:1!important;pointer-events:none!important}
#viewer.recall-active .slide-zone>:not(.slide-viewport){display:none!important}
#viewer.recall-active .slide-viewport{grid-area:visual!important;display:grid!important;min-height:100%!important;background:#02050a!important}
#viewer.recall-active .slide-image.loaded{opacity:.48!important;filter:blur(30px) brightness(.3) saturate(.72)!important;transform:scale(1.07)!important}
#viewer.focus-layout-v894.recall-active .recall-panel{display:grid!important;place-items:center!important;position:absolute!important;inset:0!important;z-index:7!important;border:0!important;background:linear-gradient(180deg,rgba(2,7,13,.36),rgba(2,7,13,.62))!important;padding:clamp(18px,4vw,48px)!important;overflow:auto!important}
.memory-loop{width:min(680px,94vw);margin:auto;padding:clamp(22px,4vw,38px);border:1px solid rgba(111,203,255,.2);border-radius:24px;background:linear-gradient(165deg,rgba(8,20,33,.94),rgba(6,11,20,.96));box-shadow:0 28px 90px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(16px)}
.memory-loop .recall-prompt{font-size:clamp(20px,2.2vw,28px)!important;line-height:1.42!important;max-width:34ch;margin:4px 0 0!important;color:#f5fbff!important;font-weight:760}
.memory-think{margin:2px 0 0;color:#7cdcff;font-size:12px;font-weight:850;letter-spacing:.04em}
.memory-scratch{margin:2px 0;border:1px solid rgba(115,158,191,.18);border-radius:14px;background:rgba(4,11,19,.52);padding:9px 12px}
.memory-scratch summary{cursor:pointer;color:#a9bac9;font-size:12px;font-weight:750}.memory-scratch summary span{color:#667f94;font-weight:600;margin-left:5px}
.memory-scratch textarea{width:100%;min-height:64px!important;margin-top:10px;resize:vertical}.memory-scratch small{display:block;margin-top:6px;color:#6f8496}
.memory-reveal{width:100%;min-height:58px!important;margin-top:5px;font-size:15px!important}.memory-reveal:disabled{opacity:.48;cursor:wait;filter:saturate(.65)}

/* Comparison is visual-first: the image stays present and the rating is a compact decision. */
#viewer.recall-compare:not(.compare-visual-only) .recall-panel{align-self:center!important;background:rgba(6,15,25,.97)!important;border:1px solid rgba(97,177,228,.18)!important;border-radius:22px!important;margin:12px!important;max-height:calc(100% - 24px)!important;box-shadow:0 24px 70px rgba(0,0,0,.42)!important}
.recall-verdict-stage{max-width:500px!important}
.recall-verdict-stage .recall-cues{margin-top:4px;padding:8px 10px}
.recall-verdicts{gap:8px!important}
.recall-verdict{position:relative;min-height:74px!important;padding:12px!important;text-align:center!important}
.recall-verdict b{font-size:15px!important}.recall-verdict span{font-size:10px!important}.recall-verdict kbd{position:absolute;right:8px;top:8px;width:20px;height:20px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:7px;background:rgba(255,255,255,.04);color:#758da0;font:700 10px/1 system-ui;box-shadow:none}
.memory-auto{margin:7px 0 0;text-align:center;color:#70899d;font-size:10px}

@media(max-width:760px){
 #viewer.focus-layout-v894.recall-active .recall-panel{padding:14px!important}.memory-loop{width:min(96vw,620px);padding:20px;border-radius:20px}.memory-loop .recall-prompt{font-size:21px!important}
 #viewer.focus-layout-v894.recall-compare .viewer-body{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:minmax(0,1.15fr) auto!important;overflow:hidden!important}
 #viewer.focus-layout-v894.recall-compare:not(.compare-visual-only).focus-mobile .slide-zone{display:grid!important;grid-row:1!important;min-height:0!important}
 #viewer.focus-layout-v894.recall-compare .recall-panel{grid-row:2!important;margin:0!important;border-radius:20px 20px 0 0!important;max-height:42dvh!important;padding:14px!important;border-left:0!important;border-right:0!important;border-bottom:0!important}
 .recall-verdicts{grid-template-columns:repeat(3,minmax(0,1fr))!important}.recall-verdict{min-height:66px!important;padding:10px 4px!important}.recall-verdict > span:not(.recall-verdict-copy){display:none!important}.recall-verdict kbd{display:none!important}
 .viewer-bottom.memory-nav{grid-template-columns:1fr 1fr!important}
}
@media(orientation:landscape) and (max-height:680px){.memory-loop{padding:16px 20px}.memory-loop .recall-prompt{font-size:18px!important}.memory-scratch{display:none}.memory-reveal{min-height:44px!important}.recall-verdict-stage{padding:12px!important}}
