/* The shared production styles above remain the visual source of truth. */
html { scrollbar-width: thin; scrollbar-color: #bec9bd transparent; }
body.dashboard.extraction-demo { min-height: 100svh; padding: 0; }
.extraction-demo :is(.workspace-sidebar,.workspace-topbar,.mobile-tabs,.workspace-skip) { display: none !important; }
.dashboard.extraction-demo .workspace-main { width: 100%; max-width: none; margin: 0; padding: 20px 38px 18px; min-width: 0; }
.extraction-demo .workspace-main > .workspace-footer { font-size: 10px; padding-top: 22px; }
.extraction-demo .extraction-tabs { margin-bottom: 16px; }
.extraction-demo .extract-welcome { margin: 4px 0 20px; }
.extraction-demo #welcome-heading { font-size: clamp(19px,2.05vw,25px); }
.extraction-demo .workspace-toast { position: sticky; top: 8px; z-index: 35; border-radius: 9px; background: #e7eee3; padding: 9px 12px; font-size: 12px; }
.extraction-demo .workspace-toast:empty { display: none; }
.extraction-demo .history-panel { margin-top: 12px; }
.extraction-demo .task-detail-shell { margin: 0; }
.extraction-demo .task-detail-shell .batch-panel { margin-top: 0; }
.extraction-demo .task-loading { min-height: 320px; }
.extraction-demo .source-link { cursor: pointer; }
.extraction-demo .result-more { z-index: 15; }
.extraction-demo .audio-dialog strong { font-family: ui-monospace,monospace; }
.extraction-demo.demo-paused * { animation: none !important; transition: none !important; }
@media(max-width:860px) {
  .dashboard.extraction-demo .workspace-main { padding: 17px 18px 20px; }
  .extraction-demo #welcome-heading { font-size: clamp(13px,3.6vw,22px); letter-spacing: -.3px; }
  .extraction-demo .extract-welcome { margin: 2px 0 15px; }
  .extraction-demo .profile-selection-bar { position: sticky; left: auto; right: auto; bottom: 10px; }
  .extraction-demo .task-detail-shell { padding: 18px; }
}
@media(max-width:359px) {
  .dashboard.extraction-demo .workspace-main { padding-inline: 12px; }
  .extraction-demo #welcome-heading { font-size: 12px; }
}

@media(min-width:861px) { .dashboard.extraction-demo :is(.recent-video-grid,.profile-recent-list:not(.all-read-list)) { grid-template-columns: repeat(3,minmax(0,1fr)); } }

/* The host grows with the real page: there is no nested page scroller. */
html, body.dashboard.extraction-demo { height: auto; min-height: 0; overflow: hidden; }
.dashboard.extraction-demo .workspace-main { flex: none; min-height: 0; }
.extraction-demo .workspace-main > .workspace-footer { margin-top: 12px; }
.extraction-demo .detail-toolbar { top: 0; }
.extraction-demo :is(.transcript,.timeline-list,.workspace-records) { max-height: none; overflow: visible; }
.extraction-demo .text-editor textarea { resize: none; overflow-y: hidden; }
.dashboard.extraction-demo[data-view=detail] .task-detail-shell { padding:18px; }
.dashboard.extraction-demo[data-view=detail] .result-overview { --overview-size:160px; margin-bottom:16px; }
.dashboard.extraction-demo[data-view=detail] .job-content:has(.text-editor:not([hidden]),.result-document > .review-item[open]) .result-overview { display:none; }
.dashboard.extraction-demo[data-view=detail] .result-document:has(> .review-item[open]) > .transcript { display:none; }
.extraction-demo .text-editor textarea { overflow-y:auto; }

@media(min-width:861px) { body.dashboard.extraction-demo { zoom: .92; } }
.extraction-demo .workspace-main > .workspace-footer { display: none; }

.dashboard.extraction-demo .profile-recent-list:not(.all-read-list) > .recent-read-card:nth-child(n+4) { display: flex; }
/* Hide the inline batch strip; saved works use the shared floating task panel. */
.extraction-demo :is(#batch-activity,#queue-panel) { display: none !important; }
.dashboard.extraction-demo #profile-recent { margin-top:37px; }
@media(max-width:860px){
 .dashboard.extraction-demo #profile-recent{margin-top:22px;margin-bottom:15px}
 .dashboard.extraction-demo #profile-recent .recent-read-card{min-height:98px}
}
.dashboard.extraction-demo #workspace-history > .section-heading { margin-bottom:13px; }
.extraction-demo #workspace-history-feedback:empty { display:none; }

/* A continuous orbit replaces the old doubled green focus outline. */
@property --demo-edge-angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
@keyframes demo-edge-orbit { to { --demo-edge-angle: 360deg; } }
.dashboard.extraction-demo :is(.input-progress-shell,.profile-progress-shell) { border: 1px solid transparent; outline: none !important; background: #fff; box-shadow: 0 5px 22px #91a6ba14; }
.dashboard.extraction-demo :is(.input-progress-shell,.profile-progress-shell):focus-within { outline: none !important; border-color: transparent; box-shadow: 0 0 18px #aab6de28,0 5px 24px #95c5b81c; }
.dashboard.extraction-demo :is(.input-progress-shell,.profile-progress-shell)::after { inset: -1px; padding: 1.5px; background: conic-gradient(from var(--demo-edge-angle),#e3eee9 0deg,#83cdbf 55deg,#90a9e0 105deg,#b8a3df 155deg,#dfede8 205deg,#8dccbf 255deg,#a9b9e7 310deg,#e3eee9 360deg); background-size: auto; animation: demo-edge-orbit 7s linear infinite; filter: drop-shadow(0 0 3px #b0b7d33b); }
.dashboard.extraction-demo.demo-paused :is(.input-progress-shell,.profile-progress-shell)::after { animation-play-state: paused; }
#particle-canvas { position: fixed; inset: 0; z-index: 100; width: 100vw; height: 100vh; pointer-events: none; }
@media(min-width:861px) { .extraction-demo #particle-canvas { zoom: 1.086956522; } }
@media(prefers-reduced-motion:reduce) { .dashboard.extraction-demo :is(.input-progress-shell,.profile-progress-shell)::after { animation: none; } }

/* The update chapter uses the existing source-library screen at a consistent scale. */
body.dashboard.extraction-demo.follow-demo { zoom:1; }
.dashboard.extraction-demo.follow-demo .workspace-main { padding:20px 26px 22px; }
.follow-demo #particle-canvas { zoom:1; }
.dashboard.follow-demo .follow-library-grid { min-height:410px; }
.follow-demo #follow-library-batch-progress { display:none !important; }
.dashboard.extraction-demo.follow-demo[data-extraction-progress] .workspace-main { padding-bottom:22px; }
.extraction-demo .extraction-progress { right:18px; bottom:16px; z-index:105; }
@media(max-width:860px) { .extraction-demo .extraction-progress { right:12px; bottom:12px; }.dashboard.extraction-demo.follow-demo[data-extraction-progress] .workspace-main { padding-bottom:20px; } }
.dashboard.follow-demo .follow-library-view { padding-bottom:0; }
.dashboard.follow-demo .follow-library-back { margin-bottom:10px; }
.dashboard.follow-demo .follow-library-header { padding:18px 24px 0; }
.dashboard.follow-demo .follow-library-stats { margin-top:16px; padding:15px 0; }
.dashboard.follow-demo .follow-library-toolbar { margin-top:17px; }
.dashboard.follow-demo .follow-library-batch { padding:10px 13px; margin:12px 0 14px; }
.follow-demo .workspace-heading { display:none; }
@media(min-width:861px) { .dashboard.follow-demo .follow-library-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px; } }
.follow-demo #follow-library-feedback { display:block; min-height:21px; margin:0 0 12px; }
.demo-work-pager { display:flex; align-items:center; justify-content:center; gap:16px; min-height:34px; margin-top:12px; font-size:11px; color:#809080; }
.dashboard .demo-work-pager button { padding:4px 8px; min-height:30px; border:0; background:transparent; color:#577a65; font-size:11px; }
body.dashboard.extraction-demo.materials-demo { zoom:1; }
.dashboard.extraction-demo.materials-demo .workspace-main { padding:22px 26px; }
.materials-demo :is(.workspace-heading) { display:none; }
.materials-demo #particle-canvas { zoom:1; }
.materials-demo #materials-view { min-height:720px; }
.materials-demo .material-group-panel { position:static; }
.materials-demo .material-source-items { max-height:none; overflow:visible; }
.materials-demo #materials-state { bottom:15px; right:15px; font-size:12px; }
@media(max-width:600px) { .dashboard.extraction-demo.materials-demo .workspace-main { padding:18px 14px; }.materials-demo #materials-view { min-height:680px; } }
@media(max-width:600px) { .dashboard.extraction-demo.follow-demo .workspace-main { padding:15px 16px 20px; }.dashboard.follow-demo .follow-library-grid { min-height:0; } }
