/* Apple II Disk Viewer — bundled CSS
 * Scoped under #a2dv-root so it cannot leak into the WordPress theme.
 * Generated from apple2-disk-viewer.html — do not edit by hand.
 */

@import url('https://fonts.googleapis.com/css2?family=Share+Tech+Mono&family=VT323&display=swap');


  #a2dv-root{
    --phosphor: #33ff55;
    --phosphor-dim: #1a8c2e;
    --phosphor-bright: #80ffaa;
    --phosphor-glow: rgba(51,255,85,0.15);
    --bg-deep: #060a06;
    --scan-line: rgba(0,0,0,0.18);
    --amber: #ffb000;
    --red: #ff4455;
    --blue: #44aaff;
    --purple: #cc44ff;
    --teal: #22ddcc;
    --dir-color: #55ffdd;
    --dir-hover-bg: rgba(85,255,221,0.08);
    --shadow-glow-strong: 0 0 10px var(--phosphor), 0 0 30px rgba(51,255,85,0.4), 0 0 60px rgba(51,255,85,0.2);
    --shadow-glow-soft: 0 0 30px rgba(51,255,85,0.15);
    --card-bg: rgba(13,26,13,0.6);
    --card-border: var(--phosphor-dim);
    --ascii-color: #55aa66;
    --vignette: radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,0.7) 100%);
  }

  /* ── Light theme: parchment / paper-tape look ── */
  /* Inverts to dark-on-light while keeping the retro typography. Disables
     the CRT scanlines and vignette since those only make sense on a glowing
     phosphor screen. Colors stay readable for accent badges (red/blue/etc.). */
  #a2dv-root[data-theme="light"]{
    --phosphor:        #073812;   /* main text — darker forest green */
    --phosphor-dim:    #3a533a;   /* dimmed text — darker sage, AAA-readable on cream */
    --phosphor-bright: #022a07;   /* highlights — darker still */
    --phosphor-glow:   rgba(7,56,18,0.07);
    --bg-deep:         #f5f0e3;   /* parchment cream */
    --scan-line:       transparent;
    --amber:           #8a5a00;
    --red:             #b8002b;
    --blue:            #003a8a;
    --purple:          #6a0099;
    --teal:            #006b66;
    --dir-color:       #1a4d8a;   /* deep blue — readable against cream */
    --dir-hover-bg:    rgba(26,77,138,0.08);   /* matching blue tint */
    --shadow-glow-strong: 0 0 1px rgba(7,56,18,0.3);
    --shadow-glow-soft:   0 1px 3px rgba(0,0,0,0.05);
    --card-bg:    #fbf7ec;
    --card-border: rgba(7,56,18,0.25);
    --ascii-color: #2f4232;
    --vignette:    none;
  }

  #a2dv-root *, #a2dv-root *::before, #a2dv-root *::after{ box-sizing: border-box; margin: 0; padding: 0; }

  #a2dv-root{
    background: var(--bg-deep);
    color: var(--phosphor);
    font-family: 'Share Tech Mono', 'Courier New', monospace;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    overflow-x: hidden;
    transition: background 0.3s ease, color 0.3s ease;
  }

  #a2dv-root::before{
    content: '';
    position: fixed; inset: 0;
    background: repeating-linear-gradient(to bottom, var(--scan-line) 0px, var(--scan-line) 1px, transparent 1px, transparent 3px);
    pointer-events: none; z-index: 100;
  }
  #a2dv-root::after{
    content: '';
    position: fixed; inset: 0;
    background: var(--vignette);
    pointer-events: none; z-index: 99;
  }

  /* Theme toggle button — fixed top-right, minimal styling that adapts to both themes */
  #a2dv-root #a2dv-theme-toggle{
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 200;
    background: var(--card-bg);
    color: var(--phosphor);
    border: 1px solid var(--card-border);
    padding: 0.5rem 0.8rem;
    font-family: inherit;
    font-size: calc(0.862rem + 4pt);
    letter-spacing: 0.15em;
    cursor: pointer;
    text-transform: uppercase;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
  }
  #a2dv-root #a2dv-theme-toggle:hover{
    color: var(--phosphor-bright);
    box-shadow: var(--shadow-glow-soft);
  }

  #a2dv-root .screen{ width: min(960px, 98vw); padding: 1.5rem; margin: 1.5rem auto; }

  /* ── Header ── */
  #a2dv-root .header{ text-align: center; margin-bottom: 2rem; }
  #a2dv-root .header h1{
    font-family: 'VT323', monospace;
    font-size: clamp(2.2rem, 6vw, 4rem);
    letter-spacing: 0.08em;
    color: var(--phosphor-bright);
    text-shadow: var(--shadow-glow-strong);
    line-height: 1; margin-bottom: 0.3rem;
  }
  #a2dv-root .header .subtitle{ font-size: calc(0.828rem + 4pt); color: var(--phosphor-dim); letter-spacing: 0.25em; text-transform: uppercase; }
  #a2dv-root .header-bar{ margin: 0.8rem 0; border-top: 1px solid var(--phosphor-dim); opacity: 0.5; }

  /* ── Drop Zone ── */
  #a2dv-root #a2dv-drop-zone{
    position: relative; border: 2px dashed var(--phosphor-dim); border-radius: 2px;
    padding: 3rem 2rem; text-align: center; cursor: pointer;
    transition: all 0.2s; background: transparent; overflow: hidden; margin-bottom: 1.5rem;
  }
  #a2dv-root #a2dv-drop-zone::before{ content:''; position:absolute; inset:4px; border:1px solid rgba(51,255,85,0.08); border-radius:1px; }
  #a2dv-root #a2dv-drop-zone.dragover{ border-color:var(--phosphor-bright); background:var(--phosphor-glow); box-shadow:0 0 30px rgba(51,255,85,0.15), inset 0 0 30px rgba(51,255,85,0.05); }
  #a2dv-root .drop-icon{ font-family:'VT323',monospace; font-size: calc(4.025rem + 4pt); line-height:1; color:var(--phosphor-dim); margin-bottom:0.8rem; display:block; transition:all 0.2s; }
  #a2dv-root #a2dv-drop-zone.dragover .drop-icon{ color: var(--phosphor-bright); }
  #a2dv-root .drop-text{ font-size: calc(1.15rem + 4pt); color:var(--phosphor); margin-bottom:0.5rem; letter-spacing:0.1em; }
  #a2dv-root .drop-sub{ font-size: calc(0.805rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.2em; }
  #a2dv-root #a2dv-file-input{ display:none; }
  #a2dv-root .click-hint{ margin-top:1rem; font-size: calc(0.747rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.15em; opacity:0.7; }

  /* ── Disk Card ── */
  @keyframes fadeIn { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
  #a2dv-root .disk-card{ background:var(--card-bg); border:1px solid var(--card-border); margin-bottom:1.5rem; box-shadow:var(--shadow-glow-soft); animation:fadeIn 0.4s ease; }
  #a2dv-root .disk-header{ padding:0.7rem 1rem; border-bottom:1px solid var(--phosphor-dim); display:flex; align-items:center; gap:1rem; background:rgba(51,255,85,0.04); flex-wrap:wrap; }
  #a2dv-root .disk-badge{ font-family:'VT323',monospace; font-size: calc(1.265rem + 4pt); padding:0.1rem 0.5rem; border:1px solid; letter-spacing:0.1em; flex-shrink:0; }
  #a2dv-root .badge-dsk{ border-color:var(--amber);  color:var(--amber);  text-shadow:0 0 8px var(--amber); }
  #a2dv-root .badge-do{ border-color:var(--amber);  color:var(--amber);  text-shadow:0 0 8px var(--amber); }
  #a2dv-root .badge-d13{ border-color:var(--red);    color:var(--red);    text-shadow:0 0 8px var(--red); }
  #a2dv-root .badge-po{ border-color:var(--blue);   color:var(--blue);   text-shadow:0 0 8px var(--blue); }
  #a2dv-root .badge-woz{ border-color:var(--purple); color:var(--purple); text-shadow:0 0 8px var(--purple); }
  #a2dv-root .badge-2mg{ border-color:var(--teal);   color:var(--teal);   text-shadow:0 0 8px var(--teal); }
  #a2dv-root .disk-title{ font-family:'VT323',monospace; font-size: calc(1.495rem + 4pt); color:var(--phosphor-bright); letter-spacing:0.08em; text-shadow:0 0 8px rgba(51,255,85,0.4); flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  #a2dv-root .disk-meta{ font-size: calc(0.747rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.15em; flex-shrink:0; }
  #a2dv-root .vol-name{ font-size: calc(0.828rem + 4pt); color:var(--phosphor); letter-spacing:0.1em; padding:0.4rem 1rem; border-bottom:1px solid rgba(51,255,85,0.15); background:rgba(51,255,85,0.02); }
  #a2dv-root .click-hint-row{ padding:0.3rem 1rem; font-size: calc(0.69rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.12em; opacity:0.7; border-bottom:1px solid rgba(51,255,85,0.06); }

  /* ── Breadcrumb (ProDOS directory navigation) ── */
  #a2dv-root .breadcrumb{ padding:0.5rem 1rem; font-size: calc(0.897rem + 4pt); letter-spacing:0.08em; background:rgba(51,255,85,0.04); border-bottom:1px solid rgba(51,255,85,0.15); color:var(--phosphor); }
  #a2dv-root .crumb{ cursor:pointer; color:var(--phosphor); padding:0.1rem 0.3rem; border-radius:2px; transition:color 0.12s, background 0.12s; }
  #a2dv-root .crumb:hover{ color:var(--phosphor-bright); background:rgba(51,255,85,0.1); text-shadow:0 0 6px var(--phosphor); }
  #a2dv-root .crumb-root{ font-weight:bold; }
  #a2dv-root .crumb-sep{ color:var(--phosphor-dim); margin:0 0.1rem; }

  /* ── File Table ── */
  #a2dv-root .file-table{ width:100%; border-collapse:collapse; font-size: calc(0.897rem + 4pt); }
  #a2dv-root .file-table thead tr{ background:rgba(51,255,85,0.06); border-bottom:1px solid var(--phosphor-dim); }
  #a2dv-root .file-table th{ padding:0.45rem 1rem; text-align:left; font-size: calc(0.713rem + 4pt); letter-spacing:0.2em; color:var(--phosphor-dim); font-weight:normal; text-transform:uppercase; white-space:nowrap; }
  #a2dv-root .file-table th:nth-child(3), #a2dv-root .file-table td:nth-child(3){ text-align:right; }
  #a2dv-root .file-table th:nth-child(4), #a2dv-root .file-table td:nth-child(4){ text-align:right; }
  #a2dv-root .file-table td{ padding:0.4rem 1rem; border-bottom:1px solid rgba(51,255,85,0.07); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:260px; }
  #a2dv-root .file-table tr.viewable:hover td{ background:rgba(51,255,85,0.07); color:var(--phosphor-bright); cursor:pointer; }
  #a2dv-root .file-table tr.dir-row:hover td{ background:var(--dir-hover-bg); color:var(--dir-color); cursor:pointer; }
  #a2dv-root .file-table tr.active-row td{ background:rgba(51,255,85,0.12); color:var(--phosphor-bright); border-bottom-color:rgba(51,255,85,0.2); }
  #a2dv-root .file-table tr:last-child td{ border-bottom:none; }
  #a2dv-root .fn{ color:var(--phosphor); letter-spacing:0.05em; }
  #a2dv-root .fn-dir{ color:var(--dir-color); font-weight:bold; }
  #a2dv-root .fn.deleted{ color:var(--phosphor-dim); text-decoration:line-through; opacity:0.5; }
  #a2dv-root .dir-icon{ display:inline-block; margin-right:0.3rem; opacity:0.85; }
  #a2dv-root .ft{ font-family:'VT323',monospace; font-size: calc(1.092rem + 4pt); padding:0.05rem 0.3rem; border:1px solid; letter-spacing:0.05em; display:inline-block; }
  #a2dv-root .ft-T, #a2dv-root .ft-TXT, #a2dv-root .ft-TEXT{ border-color:#5599ff; color:#5599ff; }
  #a2dv-root .ft-A, #a2dv-root .ft-BAS{ border-color:var(--amber); color:var(--amber); }
  #a2dv-root .ft-B, #a2dv-root .ft-BIN{ border-color:var(--red); color:var(--red); }
  #a2dv-root .ft-I{ border-color:#ff8855; color:#ff8855; }
  #a2dv-root .ft-S{ border-color:#aaffaa; color:#aaffaa; }
  #a2dv-root .ft-R, #a2dv-root .ft-REL{ border-color:#ff55cc; color:#ff55cc; }
  #a2dv-root .ft-DIR{ border-color:var(--dir-color); color:var(--dir-color); }
  #a2dv-root .ft-SYS{ border-color:var(--red); color:var(--red); }
  #a2dv-root .ft-CODE{ border-color:var(--red); color:var(--red); }
  #a2dv-root .ft-DATA{ border-color:#aaffaa; color:#aaffaa; }
  #a2dv-root .ft-INFO{ border-color:#ff8855; color:#ff8855; }
  #a2dv-root .ft-GRAF, #a2dv-root .ft-FOTO{ border-color:#cc44ff; color:#cc44ff; }
  /* CP/M */
  #a2dv-root .ft-COM, #a2dv-root .ft-HEX, #a2dv-root .ft-OBJ{ border-color:var(--red); color:var(--red); }
  #a2dv-root .ft-DOC, #a2dv-root .ft-HLP, #a2dv-root .ft-ME{ border-color:#5599ff; color:#5599ff; }
  #a2dv-root .ft-ASM, #a2dv-root .ft-MAC, #a2dv-root .ft-PAS, #a2dv-root .ft-SUB, #a2dv-root .ft-SRC{ border-color:var(--amber); color:var(--amber); }
  /* Apple IIGS executables and system files */
  #a2dv-root .ft-S16, #a2dv-root .ft-EXE, #a2dv-root .ft-RTL, #a2dv-root .ft-LDF{ border-color:var(--red); color:var(--red); }
  #a2dv-root .ft-NDA, #a2dv-root .ft-CDA, #a2dv-root .ft-TOL, #a2dv-root .ft-DVR, #a2dv-root .ft-FST, #a2dv-root .ft-CMD{ border-color:#ffaa55; color:#ffaa55; }
  /* IIGS graphics / icons */
  #a2dv-root .ft-PNT, #a2dv-root .ft-PIC, #a2dv-root .ft-FON, #a2dv-root .ft-ICN, #a2dv-root .ft-FND{ border-color:#cc44ff; color:#cc44ff; }
  /* IIGS sound */
  #a2dv-root .ft-MUS, #a2dv-root .ft-SND{ border-color:#55ffdd; color:#55ffdd; }
  /* IIGS archive */
  #a2dv-root .ft-LBR{ border-color:var(--amber); color:var(--amber); }
  /* AppleWorks docs */
  #a2dv-root .ft-ADB, #a2dv-root .ft-AWP, #a2dv-root .ft-ASP{ border-color:#5599ff; color:#5599ff; }
  #a2dv-root .ft-other{ border-color:var(--phosphor-dim); color:var(--phosphor-dim); }
  #a2dv-root .locked{ color:var(--phosphor-dim); font-size: calc(0.805rem + 4pt); }
  #a2dv-root .sz{ color:var(--phosphor); font-variant-numeric:tabular-nums; }
  #a2dv-root .disk-footer{ padding:0.4rem 1rem; border-top:1px solid rgba(51,255,85,0.12); font-size: calc(0.713rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.12em; display:flex; justify-content:space-between; background:rgba(51,255,85,0.02); flex-wrap:wrap; gap:0.5rem; }

  /* ── File Viewer ── */
  #a2dv-root #a2dv-file-viewer{ display:none; background:var(--card-bg); border:1px solid var(--phosphor); margin-bottom:1.5rem; box-shadow:var(--shadow-glow-soft); animation:fadeIn 0.3s ease; }
  #a2dv-root #a2dv-file-viewer.visible{ display:block; }
  #a2dv-root .viewer-header{ display:flex; flex-direction:column; gap:0.45rem; padding:0.55rem 1rem 0.5rem; border-bottom:1px solid var(--phosphor-dim); background:rgba(51,255,85,0.05); }
  #a2dv-root .viewer-header-row{ display:flex; align-items:center; gap:0.6rem; flex-wrap:wrap; }
  #a2dv-root .viewer-filename{ font-family:'VT323',monospace; font-size: calc(1.38rem + 4pt); color:var(--phosphor-bright); letter-spacing:0.1em; text-shadow:0 0 8px rgba(51,255,85,0.4); flex:1 1 auto; min-width:0; overflow-wrap:anywhere; word-break:break-all; }
  #a2dv-root .viewer-type{ font-size: calc(0.747rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.2em; flex-shrink:0; }

  /* header buttons */
  #a2dv-root .viewer-btn{ background:none; border:1px solid var(--phosphor-dim); color:var(--phosphor-dim); font-family:'Share Tech Mono',monospace; font-size: calc(0.782rem + 4pt); padding:0.2rem 0.55rem; cursor:pointer; letter-spacing:0.1em; transition:all 0.15s; flex-shrink:0; }
  #a2dv-root .viewer-btn:hover{ border-color:var(--phosphor-bright); color:var(--phosphor-bright); }
  #a2dv-root .viewer-btn-active{ border-color:var(--phosphor); color:var(--phosphor); background:var(--phosphor-glow); }
  #a2dv-root .viewer-btn.close-btn:hover{ border-color:var(--red); color:var(--red); }
  #a2dv-root .viewer-btn.copy-ok{ border-color:var(--phosphor); color:var(--phosphor); }

  #a2dv-root .viewer-body{ padding:1rem; max-height:500px; overflow-y:auto; overflow-x:auto; scrollbar-width:thin; scrollbar-color:var(--phosphor-dim) transparent; }
  #a2dv-root .viewer-body::-webkit-scrollbar{ width:6px; height:6px; }
  #a2dv-root .viewer-body::-webkit-scrollbar-track{ background:transparent; }
  #a2dv-root .viewer-body::-webkit-scrollbar-thumb{ background:var(--phosphor-dim); border-radius:3px; }
  #a2dv-root .viewer-info{ padding:0.4rem 1rem; font-size: calc(0.713rem + 4pt); color:var(--phosphor-dim); border-top:1px solid rgba(51,255,85,0.1); letter-spacing:0.1em; display:flex; gap:1.5rem; flex-wrap:wrap; background:rgba(51,255,85,0.01); }

  /* ── BASIC listing ── */
  #a2dv-root .basic-listing{ font-size: calc(0.943rem + 4pt); font-family:'Share Tech Mono','Courier New',monospace; }
  /* Each line is a block-level flex row so control chars never cause visual newlines */
  #a2dv-root .basic-line{
    display: flex;
    flex-direction: row;
    align-items: baseline;
    line-height: 1.75;
    white-space: pre;   /* preserve spaces inside tokens */
  }
  #a2dv-root .basic-linenum{ color:var(--phosphor-dim); min-width:5.5ch; margin-right:0.6ch; text-align:right; flex-shrink:0; user-select:none; }
  #a2dv-root .basic-body{ flex:1; white-space:pre-wrap; word-break:break-word; }
  #a2dv-root .basic-keyword{ color:var(--phosphor-bright); }
  #a2dv-root .basic-str{ color:#88cc88; }
  #a2dv-root .basic-rem{ color:var(--phosphor-dim); font-style:italic; }
  #a2dv-root .basic-num{ color:var(--amber); }
  /* Control character badge — displayed inline, never causes line break */
  #a2dv-root .basic-ctrl{
    display: inline;
    color: var(--red);
    background: rgba(255,68,85,0.12);
    border: 1px solid rgba(255,68,85,0.35);
    border-radius: 2px;
    font-size: 0.65em;
    padding: 0 0.25em;
    letter-spacing: 0.04em;
    vertical-align: middle;
    white-space: nowrap;
  }

  /* ── Text view ── */
  #a2dv-root .text-view{ font-size: calc(0.943rem + 4pt); line-height:1.65; white-space:pre-wrap; word-break:break-word; color:var(--phosphor); }
  #a2dv-root .text-empty{ color:var(--phosphor-dim); font-size: calc(0.897rem + 4pt); font-style:italic; letter-spacing:0.12em; padding:1.5rem 0; text-align:center; }

  /* ── Hex dump ── */
  #a2dv-root .hex-dump{ font-size: calc(0.862rem + 4pt); line-height:1.75; }
  #a2dv-root .hex-row{ display:flex; gap:1rem; align-items:baseline; padding:0 0.1rem; }
  #a2dv-root .hex-row:hover{ background:rgba(51,255,85,0.04); }
  #a2dv-root .hex-addr{ color:var(--phosphor-dim); min-width:5ch; flex-shrink:0; }
  #a2dv-root .hex-bytes{ display:flex; gap:0.25ch; min-width:26ch; color:var(--phosphor); letter-spacing:0.02em; flex-wrap:nowrap; }
  #a2dv-root .hex-bytes .hb{ min-width:2.2ch; }
  #a2dv-root .hex-sep{ color:rgba(51,255,85,0.2); margin:0 0.2ch; }
  #a2dv-root .hex-ascii{ color:var(--ascii-color); font-size: calc(0.828rem + 4pt); letter-spacing:0.04em; white-space:pre; }

  /* ── Disassembly listing (4-column grid) ── */
  /*  col 1: memory location  |  col 2: opcodes  |  col 3: instruction  |  col 4: comments  */
  /*  auto-sized columns align across rows because every cell is a direct grid child */
  #a2dv-root .disasm-listing{ display:grid; grid-template-columns:auto auto auto 1fr; column-gap:1.25ch; row-gap:0; font-family:'Share Tech Mono',monospace; font-size: calc(0.897rem + 4pt); line-height:1.45; white-space:pre; }
  #a2dv-root .disasm-listing .d-addr{ color:var(--phosphor-dim); }
  #a2dv-root .disasm-listing .d-bytes{ color:var(--phosphor); letter-spacing:0.02em; }
  #a2dv-root .disasm-listing .d-instr{ color:var(--phosphor-bright); }
  #a2dv-root .disasm-listing .d-comment{ color:var(--phosphor-dim); font-style:italic; }
  #a2dv-root .disasm-listing .d-note{ grid-column:1 / -1; color:var(--phosphor-dim); font-style:italic; padding:0.2rem 0; }

  /* ── Messages ── */
  #a2dv-root .msg{ padding:0.8rem 1rem; font-size: calc(0.92rem + 4pt); letter-spacing:0.1em; border-left:3px solid; margin:0.5rem 0; animation:fadeIn 0.3s ease; }
  #a2dv-root .msg-error{ border-color:var(--red);   color:var(--red);   background:rgba(255,68,85,0.06); }
  #a2dv-root .msg-warn{ border-color:var(--amber); color:var(--amber); background:rgba(255,176,0,0.06); }
  #a2dv-root .msg-info{ border-color:var(--phosphor-dim); color:var(--phosphor-dim); }

  @keyframes blink  { 0%,49%{opacity:1} 50%,100%{opacity:0} }
  #a2dv-root .cursor::after{ content:'▮'; animation:blink 1s step-end infinite; margin-left:2px; }
  #a2dv-root .progress-bar{ height:2px; background:rgba(51,255,85,0.1); margin:0.5rem 0; position:relative; overflow:hidden; }
  #a2dv-root .progress-bar::after{ content:''; position:absolute; top:0; left:-100%; width:100%; height:100%; background:linear-gradient(to right, transparent, var(--phosphor), transparent); animation:sweep 1.5s ease infinite; }
  @keyframes sweep { to { left:100%; } }
  #a2dv-root .prompt{ padding:0.5rem 1rem; font-size: calc(0.862rem + 4pt); color:var(--phosphor-dim); letter-spacing:0.1em; }
  #a2dv-root .prompt::before{ content:'] '; }
  #a2dv-root .page-footer{ margin-top:auto; padding:1rem; text-align:center; font-size: calc(0.69rem + 4pt); letter-spacing:0.2em; color:var(--phosphor-dim); opacity:0.5; text-transform:uppercase; }

  @media (max-width:600px) {
    #a2dv-root .file-table th:nth-child(4), #a2dv-root .file-table td:nth-child(4){ display:none; }
    #a2dv-root .hex-bytes{ min-width:16ch; }
  }



/* ── WordPress-embed corrections ───────────────────────────
   The standalone viewer was built to own the viewport:
   pseudo-element overlays use position:fixed, theme toggle is
   fixed to the browser corner, body has min-height:100vh, and
   .screen sizes with 98vw. None of those work inside a
   WordPress section. Re-anchor everything to the embed root. */
#a2dv-root                     { position: relative; min-height: auto; width: 100%; max-width: 100%; }
#a2dv-root::before             { position: absolute; }
#a2dv-root::after              { position: absolute; }
#a2dv-root #a2dv-theme-toggle  { position: absolute; }
#a2dv-root .screen             { width: 100%; max-width: 960px; }
