/* The existing modal is the only viewport layer. Its transparent slot carries the cutout board. */
#reader[data-module="data"]{position:fixed;inset:0;width:100vw;height:100dvh;margin:0;background:transparent;color:#faf5e8;overflow:hidden}
#reader[data-module="data"]::backdrop{background:#101a1240}
#scene-shell[data-modal-module="data"]{filter:blur(6px) brightness(.54)}
#reader[data-module="data"] .reader-toolbar{position:absolute;left:24px;right:24px;top:8px;z-index:9;background:transparent;color:#faf5e8;padding:0;min-height:56px}
#reader[data-module="data"] .reader-toolbar button{color:inherit}
#reader[data-module="data"] #reader-scroll{height:100%;padding:0;overflow:visible}
#reader[data-module="data"] #module-slot,#reader[data-module="data"] #module-slot>div{height:100%}
.data-analysis-suite{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:70px 24px 24px;isolation:isolate}
.data-analysis-suite [hidden]{display:none!important}
.data-board-directory{position:relative;width:min(940px,calc((100dvh - 210px)*1.38),calc(100vw - 64px));background:transparent;border:0;box-shadow:none;border-radius:0;overflow:visible}
.data-board-directory .bg-heading{padding:0 22px;flex-wrap:wrap;gap:6px 18px;color:#faf5e8}
.data-board-directory .bg-heading h1{font-size:26px}
.data-board-directory .bg-heading p,.data-board-directory .bg-status{color:#e8e2d2}
.data-board-directory .bg-back{display:none}
.data-board-directory .bg-board-art{filter:drop-shadow(0 14px 22px #10170e66)} /* taste-skill-ignore: user explicitly keeps contour shadow on the floating cutout board inside the modal. */
.data-board-directory .bg-paper-copy{gap:5px}
.data-board-directory .bg-brand{font-size:clamp(11px,1.05vw,13px)}
.data-board-directory .bg-paper-copy strong{font-size:clamp(15px,1.6vw,20px)}
.data-board-directory .bg-description{font-size:clamp(11px,1vw,13px)}
.data-board-directory .bg-read-label{font-size:12px}
.data-board-directory .bg-status{font-size:12px;margin:0;padding:8px 12px}
.data-board-directory .bg-replay{margin-left:auto;background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;min-height:44px;font-size:12px;color:#e5edcf}
.data-board-directory .bg-motion-choice{font-size:12px;display:flex;gap:7px;align-items:center;min-height:44px;cursor:pointer}
.data-board-directory .bg-motion-choice input{width:18px;height:18px;accent-color:#506447}
.data-board-directory .bg-heading button:focus-visible{outline-color:#e5edcf}
.data-board-directory .bg-gateway[data-full-motion="true"] .bg-report{transition:transform 180ms cubic-bezier(.23,1,.32,1)}
.data-analysis-reader{position:absolute;left:50%;top:calc(50% + 20px);transform:translate(-50%,-50%);width:min(880px,calc(100vw - 176px));height:min(760px,calc(100dvh - 104px));margin-left:32px}
.data-analysis-scroll{width:100%;height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;background:#f4f0e6;color:#332e25}
.data-analysis-index{position:absolute;right:100%;top:40px;width:88px;display:grid;gap:10px;z-index:2}
.data-analysis-index button{min-height:90px;padding:12px 9px;border:0;border-radius:5px 0 0 5px;background:#d9cba7;color:#514735;font:14px/1.7 'Microsoft YaHei',sans-serif;cursor:pointer;overflow-wrap:anywhere;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px}
.data-analysis-index button:nth-child(2){background:#c6d0b6;min-height:112px;font-size:12px}
.data-analysis-index button:nth-child(3){background:#d4c7b8}
.data-analysis-index button[aria-current="true"]{background:#526447;color:#fffaf0}
.data-analysis-index small{font-size:11px}
.data-analysis-index button:focus-visible{outline:3px solid #f7df9f;outline-offset:3px}
@media(max-width:650px){
  #reader[data-module="data"] .reader-toolbar{left:14px;right:14px}
  .data-analysis-suite{padding:68px 12px 16px}
  .data-board-directory{width:calc(100vw - 36px);max-height:calc(100dvh - 98px);overflow:auto}
  .data-board-directory:has([data-phase="extracting"]),.data-board-directory:has([data-phase="returning"]){overflow:visible}
  .data-board-directory .bg-heading{padding:0 8px 10px;gap:3px 12px}
  .data-board-directory .bg-heading h1{font-size:23px}
  .data-board-directory .bg-heading p{font-size:12px}
  .data-board-directory .bg-board{padding:18px 16px;border:0;background:transparent}
  .data-board-directory .bg-board-art{display:block;object-fit:fill}
  .data-board-directory .bg-papers{max-width:none;gap:20px}
  .data-board-directory .bg-report{aspect-ratio:1.8;max-width:440px;transform:rotate(0)}
  .data-board-directory .bg-paper-copy{inset:16% 8%;display:grid;grid-template-columns:1fr 34%;grid-template-rows:auto auto auto;gap:2px 10px;text-align:left;align-items:center}
  .data-board-directory .bg-brand{min-height:0;font-size:11px;justify-content:start}
  .data-board-directory .bg-paper-copy strong{font-size:19px}
  .data-board-directory .bg-project-art{grid-column:2;grid-row:1/4;width:100%;height:100%;max-height:90px}
  .data-board-directory .bg-description{font-size:12px;min-height:0}
  .data-board-directory .bg-read-label{display:none}
  .data-board-directory .bg-clip{scale:.75;top:-5px}
  .data-board-directory .bg-flight{overflow:visible}
  .data-analysis-reader{width:calc(100vw - 76px);height:calc(100dvh - 96px);margin-left:22px}
  .data-analysis-index{width:44px;top:28px;gap:9px}
  .data-analysis-index button{min-height:99px;padding:9px 4px;font-size:12px;writing-mode:vertical-rl;gap:6px}
  .data-analysis-index button:nth-child(2){min-height:164px}
  .data-analysis-index small{writing-mode:horizontal-tb;font-size:9px}
}
