/* V8.10.3 — immersive UI fixes: stable Reading Focus, larger AI bar, side Pathway, clean Memory Loop comparison. */

/* ---------- Focus toolbar: larger, calmer, still one horizontal control bar ---------- */
#viewer.focus-layout-v894.immersive-viewer .slide-zone{
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  grid-template-areas:'information' 'tools' 'visual' 'inspection'!important;
}
#viewer.focus-layout-v894.immersive-viewer .immersive-study-dock{
  min-height:58px!important;
  padding:7px 4px 7px 2px!important;
  border-bottom:1px solid rgba(112,210,255,.08);
  background:linear-gradient(180deg,rgba(6,12,20,.80),rgba(6,10,16,.48));
  overflow:visible!important;
}
#viewer.focus-layout-v894.immersive-viewer .immersive-study-dock .slide-tools-group{
  min-height:44px;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none;
}
#viewer.focus-layout-v894.immersive-viewer .immersive-study-dock .slide-tools-group::-webkit-scrollbar{display:none}
#viewer.focus-layout-v894.immersive-viewer .immersive-study-dock .tool-pill{
  height:42px!important;
  min-height:42px!important;
  padding:0 14px!important;
  border-radius:13px!important;
  font-size:12px!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
}
#viewer.focus-layout-v894.immersive-viewer .immersive-study-dock .tool-primary-ai{
  height:48px!important;
  min-height:48px!important;
  padding:0 18px!important;
  font-size:13px!important;
  color:#f4fbff!important;
  border-color:rgba(90,188,255,.34)!important;
  background:linear-gradient(135deg,rgba(24,126,255,.20),rgba(112,82,255,.18))!important;
  box-shadow:0 10px 28px rgba(35,111,255,.11),inset 0 1px rgba(255,255,255,.05);
}
.spence-ai-mark{
  width:22px;height:22px;flex:0 0 22px;border-radius:50%;
  background:conic-gradient(from 20deg,#54e5ff,#2586ff 34%,#8263ff 67%,#ff66b5,#54e5ff);
  box-shadow:0 0 16px rgba(71,168,255,.32);
  animation:spenceTopOrb 7s linear infinite,spenceTopPulse 2.8s ease-in-out infinite;
}
@keyframes spenceTopOrb{to{transform:rotate(360deg)}}
@keyframes spenceTopPulse{0%,100%{box-shadow:0 0 12px rgba(71,168,255,.22)}50%{box-shadow:0 0 24px rgba(89,126,255,.50)}}

/* ---------- Connected Pathway: persistent star cue + one side panel, never a duplicate modal ---------- */
.pathway-tool{position:relative}
.pathway-tool .pathway-star{
  display:inline-grid;place-items:center;width:22px;height:22px;border-radius:8px;
  color:#728395;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);
  transition:transform .15s ease,color .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.pathway-tool.has-pathway{border-color:rgba(255,202,81,.18)!important;color:#dce8f0!important}
.pathway-tool.has-pathway .pathway-star{color:#ffd15d;background:rgba(255,200,61,.07);border-color:rgba(255,202,81,.20)}
.pathway-tool.has-pathway:hover,.pathway-tool.has-pathway:focus-visible{
  border-color:rgba(255,214,105,.54)!important;background:rgba(255,193,54,.08)!important;
}
.pathway-tool.has-pathway:hover .pathway-star,.pathway-tool.has-pathway:focus-visible .pathway-star{
  transform:scale(1.08) rotate(7deg);color:#ffe39b;background:rgba(255,206,76,.14);border-color:rgba(255,224,142,.55);box-shadow:0 0 18px rgba(255,199,60,.16);
}
.pathway-tool.no-pathway{opacity:.42}
#viewer.focus-layout-v894 .pathway-panel{
  min-width:0;min-height:0;height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;
  border-left:1px solid rgba(255,205,84,.13);
  background:linear-gradient(180deg,#0b1018 0%,#070b11 100%);color:#eef5fa;
}
#viewer.focus-layout-v894 .pathway-panel[hidden]{display:none!important}
#viewer.focus-layout-v894.immersive-viewer.pathway-open:not(.focus-mobile):not(.ai-open):not(.notes-open):not(.recall-active):not(.recall-compare) .viewer-body{
  grid-template-columns:minmax(0,1fr) clamp(340px,29vw,455px)!important;
}
#viewer.focus-layout-v894:not(.focus-mobile).pathway-open .slide-zone{grid-column:1!important}
#viewer.focus-layout-v894:not(.focus-mobile).pathway-open .pathway-panel{grid-column:2!important;grid-row:1!important}
#viewer.focus-layout-v894.pathway-open .chunk-rail,#viewer.focus-layout-v894.pathway-open .ai-panel,#viewer.focus-layout-v894.pathway-open .notes-panel{display:none!important}
.pathway-side-head{
  min-width:0;min-height:68px;padding:12px 12px 10px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;
  border-bottom:1px solid rgba(255,255,255,.065);
}
.pathway-side-head>div{min-width:0}.pathway-side-head .eyebrow{display:block;color:#ffd96c;font-size:9px!important}
.pathway-side-head strong{display:block;margin-top:4px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;line-height:1.3}
.pathway-side-close{flex:0 0 36px;width:36px;height:36px;padding:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.025);color:#c8d4dd;cursor:pointer}
.pathway-side-close:hover{background:rgba(255,255,255,.06);color:#fff}
.pathway-side-intro{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.045);background:rgba(255,195,57,.025)}
.pathway-star-large{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:rgba(255,202,73,.09);border:1px solid rgba(255,213,111,.16);color:#ffd96c;font-size:17px}
.pathway-side-intro p{margin:0;color:#8ca0b2;font-size:11px;line-height:1.5}.pathway-side-intro strong{color:#dce7ee}
.pathway-side-grid{min-height:0;overflow:auto;padding:12px;display:grid;align-content:start;gap:10px;overscroll-behavior:contain}
.pathway-side-card{padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:15px;background:linear-gradient(150deg,rgba(255,255,255,.032),rgba(255,255,255,.012));display:grid;gap:7px}
.pathway-side-track{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#7f91a1;font-size:9px;font-weight:900;letter-spacing:.08em}.pathway-side-track i{font-style:normal;color:#ffd269}
.pathway-side-card>strong{font-size:13px;line-height:1.35}.pathway-side-card>small{color:#667b8d;font-size:10px}
.pathway-side-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:3px}
.pathway-side-btn{min-height:38px;padding:6px 8px;border:1px solid rgba(105,181,225,.18);border-radius:11px;background:#0b1723;color:#dcecf6;font:800 10px/1.2 system-ui;cursor:pointer}
.pathway-side-btn:hover,.pathway-side-btn:focus-visible{border-color:rgba(94,211,255,.52);background:#102537}
.pathway-side-recall{border-color:rgba(255,195,69,.20);color:#ffe7a6;background:rgba(255,183,46,.045)}
.pathway-side-state{display:inline-flex;align-items:center;justify-content:center;min-height:34px;margin-top:3px;border:1px solid rgba(255,255,255,.07);border-radius:10px;color:#8294a4;font-size:10px;font-weight:800}.pathway-side-state.current{color:#9ee6ff;border-color:rgba(84,209,255,.18);background:rgba(62,177,255,.045)}
#viewer.focus-layout-v894.focus-mobile.pathway-open{grid-template-rows:minmax(0,1fr)!important}
#viewer.focus-layout-v894.focus-mobile.pathway-open>.viewer-top,#viewer.focus-layout-v894.focus-mobile.pathway-open>.viewer-bottom,#viewer.focus-layout-v894.focus-mobile.pathway-open .slide-zone,#viewer.focus-layout-v894.focus-mobile.pathway-open .chunk-rail{display:none!important}
#viewer.focus-layout-v894.focus-mobile.pathway-open .viewer-body{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important}
#viewer.focus-layout-v894.focus-mobile.pathway-open .pathway-panel{display:grid!important;grid-column:1!important;grid-row:1!important;border-left:0}

/* Library cue: slides with a mapped pathway carry a discrete gold star. */
.topic-pathway-badge{
  position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;
  border:1px solid rgba(255,211,102,.20);background:rgba(7,9,13,.86);color:#ffd363;font-size:13px;font-weight:900;
  box-shadow:0 9px 24px rgba(0,0,0,.30);transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.immersive-topic-card.has-pathway:hover .topic-pathway-badge,.immersive-topic-card.has-pathway:focus-visible .topic-pathway-badge{
  transform:scale(1.10) rotate(7deg);background:rgba(66,48,11,.94);border-color:rgba(255,226,147,.56);box-shadow:0 0 20px rgba(255,200,55,.18);
}

/* ---------- Reading Focus: controls occupy their own row and can never clip into the visual ---------- */
.visual-reader-overlay{padding:0!important;overflow:hidden!important;background:#02060b!important}
.visual-reader-dialog{
  width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;margin:0!important;
  display:grid!important;grid-template-rows:auto auto auto minmax(0,1fr) auto!important;
  grid-template-areas:'head' 'controls' 'selection' 'stage' 'foot'!important;
  overflow:hidden!important;border-radius:0!important;border-left:0!important;border-right:0!important;
}
.reader-header{grid-area:head;min-height:66px!important;padding:10px 14px!important;flex:0 0 auto;overflow:hidden;background:#07101a;z-index:4}
.reader-heading{min-width:0}.reader-heading h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.reader-controls{
  grid-area:controls!important;position:relative;z-index:4;min-height:58px!important;padding:7px 14px!important;
  display:grid!important;grid-template-columns:auto minmax(160px,220px) auto auto minmax(130px,1fr)!important;align-items:center!important;gap:8px!important;
  overflow:visible!important;background:#08111b;border-bottom:1px solid #1b2d3d;
}
.reader-controls>*{min-width:0}.reader-controls>label{white-space:nowrap}.reader-controls>select{width:100%;min-width:0!important}
.reader-controls>button{white-space:nowrap!important;min-height:40px!important;padding:6px 11px!important}
.reader-help{justify-self:end;margin-left:0!important;min-width:0!important;max-width:100%}
.reader-help summary{white-space:nowrap;min-height:38px!important;padding:7px 8px!important}
.reader-help[open]{grid-column:1/-1!important;width:100%!important;max-height:36vh;overflow:auto;margin:0!important;padding:10px 12px!important;background:#0b1926;border-color:#385169;box-shadow:0 16px 46px rgba(0,0,0,.32)}
.reader-select-tools{grid-area:selection!important;margin:0!important;border-radius:0!important;border-left:0!important;border-right:0!important;max-height:30vh;overflow:auto}
.reader-stage{grid-area:stage!important;min-height:0!important;margin:8px 10px!important;overflow:hidden!important}
.reader-frame{width:100%!important;height:100%!important;min-height:0!important;overflow:hidden!important}
.reader-footer{grid-area:foot!important;min-height:74px;max-height:150px;overflow:auto;background:#07101a;z-index:4}

/* ---------- Memory Loop comparison: visual stays full-size, compact rating card floats above it ---------- */
#viewer.focus-layout-v894.recall-compare .viewer-body{position:relative!important;display:block!important;overflow:hidden!important}
#viewer.focus-layout-v894.recall-compare .slide-zone{
  position:absolute!important;inset:0!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;grid-template-areas:'visual'!important;padding:0!important;min-height:0!important;
}
#viewer.focus-layout-v894.recall-compare .slide-zone>:not(.slide-viewport){display:none!important}
#viewer.focus-layout-v894.recall-compare .slide-viewport{grid-area:visual!important;width:100%!important;height:100%!important;min-height:0!important;background:#000!important}
#viewer.focus-layout-v894.recall-compare .chunk-rail,#viewer.focus-layout-v894.recall-compare .notes-panel,#viewer.focus-layout-v894.recall-compare .pathway-panel,#viewer.focus-layout-v894.recall-compare .ai-panel{display:none!important}
#viewer.focus-layout-v894.recall-compare:not(.compare-visual-only) .recall-panel{
  position:absolute!important;left:50%!important;bottom:18px!important;top:auto!important;transform:translateX(-50%)!important;
  width:min(720px,calc(100% - 32px))!important;max-width:none!important;max-height:min(310px,46%)!important;margin:0!important;padding:0!important;
  z-index:10!important;overflow:auto!important;border:1px solid rgba(97,177,228,.24)!important;border-radius:20px!important;
  background:linear-gradient(160deg,rgba(7,18,30,.97),rgba(5,11,20,.98))!important;box-shadow:0 22px 74px rgba(0,0,0,.60)!important;
}
#viewer.focus-layout-v894.recall-compare .recall-verdict-stage{width:100%!important;max-width:none!important;padding:16px 18px 14px!important}
.recall-sprint-head{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;flex-wrap:wrap!important;min-width:0!important;padding-bottom:9px!important}
.recall-sprint-head .eyebrow{flex:0 0 auto;white-space:nowrap}.recall-sprint-head .recall-step{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;white-space:nowrap!important;padding:5px 8px;border:1px solid rgba(108,174,216,.12);border-radius:999px;background:rgba(255,255,255,.025);font-size:9px!important;letter-spacing:.06em}.recall-step b{font:inherit;color:#5d7890}
#viewer.focus-layout-v894.recall-compare .recall-verdict-stage h2{margin:10px 0 3px!important;font-size:22px!important;line-height:1.15!important}
#viewer.focus-layout-v894.recall-compare .recall-small{margin:0 0 10px!important;font-size:11px!important;line-height:1.45!important}
.recall-verdicts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:6px!important}
.recall-verdict{
  position:relative!important;min-width:0!important;min-height:74px!important;padding:12px 34px 11px 12px!important;
  display:grid!important;grid-template-rows:auto auto!important;align-content:center!important;gap:4px!important;text-align:left!important;
  overflow:hidden!important;
}
.recall-verdict b{display:block!important;min-width:0;font-size:14px!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
.recall-verdict span{display:block!important;min-width:0;margin:0!important;font-size:10px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere;color:#9eb5c8}
.recall-verdict kbd{right:8px!important;top:50%!important;transform:translateY(-50%)!important}
.memory-auto{margin:9px 0 0!important;line-height:1.35!important}

@media(max-width:920px){
  .reader-controls{grid-template-columns:auto minmax(140px,1fr) auto auto!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none}.reader-help{display:none}
  #viewer.focus-layout-v894.immersive-viewer .immersive-study-dock{min-height:54px!important}.spence-ai-mark{width:20px;height:20px;flex-basis:20px}
}
@media(max-width:760px){
  #viewer.focus-layout-v894.recall-compare:not(.compare-visual-only) .recall-panel{left:0!important;right:0!important;bottom:0!important;transform:none!important;width:100%!important;max-height:44dvh!important;border-radius:18px 18px 0 0!important;border-left:0!important;border-right:0!important;border-bottom:0!important}
  #viewer.focus-layout-v894.recall-compare .recall-verdict-stage{padding:13px!important}.recall-verdicts{gap:6px!important}.recall-verdict{min-height:64px!important;padding:10px 7px!important;text-align:center!important}.recall-verdict > span:not(.recall-verdict-copy){display:none!important}.recall-verdict kbd{display:none!important}.recall-verdict b{white-space:normal!important}
  .pathway-side-actions{grid-template-columns:1fr}
}
@media(max-width:560px){
  .reader-header{min-height:58px!important;padding:8px 10px!important}.reader-heading h2{font-size:17px!important}
  .reader-controls{min-height:52px!important;padding:6px 9px!important;grid-template-columns:minmax(140px,1fr) auto!important}.reader-controls>label,.reader-controls>[data-reader-region="overview"]{display:none!important}.reader-controls>select{grid-column:1}.reader-controls>[data-reader-start-select]{grid-column:2}.reader-stage{margin:5px!important}.reader-footer{max-height:185px}
}
@media(orientation:landscape) and (max-height:700px){
  .reader-header{min-height:48px!important;padding:5px 10px!important}.reader-controls{min-height:46px!important;padding:4px 10px!important}.reader-stage{margin:4px 6px!important}.reader-footer{min-height:58px;max-height:112px;padding:5px 10px!important}
  #viewer.focus-layout-v894.immersive-viewer .immersive-study-dock{min-height:48px!important;padding:4px 2px!important}.tool-primary-ai{height:42px!important;min-height:42px!important}
  #viewer.focus-layout-v894.recall-compare:not(.compare-visual-only) .recall-panel{bottom:8px!important;max-height:52%!important}.recall-verdict-stage{padding:10px 12px!important}.recall-verdict{min-height:58px!important}
}
@media(prefers-reduced-motion:reduce){.spence-ai-mark{animation:none!important}.pathway-tool .pathway-star,.topic-pathway-badge{transition:none!important}}
