body{--font-display:"Inter", ui-sans-serif, system-ui, sans-serif;--accent-soft:color-mix(in srgb, var(--color-accent) 14%, var(--color-surface));--smpte-1:silver;--smpte-2:#c0c000;--smpte-3:#00c0c0;--smpte-4:#00c000;--smpte-5:#c000c0;--smpte-6:#c00000;--smpte-7:#0000c0}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-soft);margin-bottom:10px}.lede{color:var(--color-text-soft);max-width:56ch;font-size:var(--text-md);margin-top:12px}.smpte{border-radius:var(--radius-md);height:10px;margin-top:22px;display:flex;overflow:hidden}.smpte span{flex:1}.smpte span:first-child{background:var(--smpte-1)}.smpte span:nth-child(2){background:var(--smpte-2)}.smpte span:nth-child(3){background:var(--smpte-3)}.smpte span:nth-child(4){background:var(--smpte-4)}.smpte span:nth-child(5){background:var(--smpte-5)}.smpte span:nth-child(6){background:var(--smpte-6)}.smpte span:nth-child(7){background:var(--smpte-7)}.smpte.busy span{animation:1.1s ease-in-out infinite smpte-pulse}.smpte.busy span:nth-child(2){animation-delay:80ms}.smpte.busy span:nth-child(3){animation-delay:.16s}.smpte.busy span:nth-child(4){animation-delay:.24s}.smpte.busy span:nth-child(5){animation-delay:.32s}.smpte.busy span:nth-child(6){animation-delay:.4s}.smpte.busy span:nth-child(7){animation-delay:.48s}@keyframes smpte-pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.smpte.busy span{opacity:.6;animation:none}}.drop{background:var(--color-surface);border:2px dashed var(--color-border-strong);border-radius:var(--radius-xl);padding:52px var(--space-lg);text-align:center;cursor:pointer;transition:border-color var(--t-fast), background-color var(--t-fast);margin-top:26px}.drop:hover,.drop:focus-visible{border-color:var(--color-accent);outline:none}.drop:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}.drop.over{border-color:var(--color-accent);background:var(--accent-soft)}.drop .big{font-size:1.08rem;font-weight:700}.drop .hint{color:var(--color-text-soft);font-size:var(--text-base);margin-top:6px}.drop .privacy{margin-top:var(--space-md);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-accent);background:var(--accent-soft);border-radius:var(--radius-pill);padding:4px 10px;display:inline-block}input[type=file]{display:none}.status{font-family:var(--font-mono);font-size:var(--text-base);color:var(--color-text-soft);margin-top:18px}.status.error{color:var(--color-error)}.results{margin-top:34px;display:none}.results.visible{display:block}.diag,.cover,.chapters-box,.integrity,.structure,.track{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-top:var(--space-md)}.chapters-box,.integrity,.structure{padding:var(--space-md) var(--space-lg)}.diag,.track{overflow:hidden}.diag h3,.chapters-box h3,.int-head{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-soft)}.diag h3{padding:12px var(--space-lg);border-bottom:1px solid var(--color-border)}.chapters-box h3,.int-head{margin-bottom:12px}.batch{margin-top:30px}.batch-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;display:flex}.batch-progress{font-family:var(--font-mono);font-size:var(--text-base);color:var(--color-text-soft)}.batch-controls{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.batch-prof{font-size:var(--text-base);color:var(--color-text-soft)}#batchProfile,#profileSelect{font-family:var(--font-mono);font-size:var(--text-base);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);color:var(--color-text);padding:7px 10px}#profileSelect{max-width:60%;margin-left:auto}.batch-filters{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.batch-filters button{font-family:var(--font-mono);font-size:var(--text-sm);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-soft);cursor:pointer;padding:5px 11px}.batch-filters button.on{background:var(--color-text);color:var(--color-bg);border-color:var(--color-text)}.batch-tablewrap{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);margin-top:14px;overflow-x:auto}.batch-table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.batch-table th,.batch-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:10px 14px}.batch-table th{font-family:var(--font-mono);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-soft);white-space:nowrap}.batch-table tr:last-child td{border-bottom:none}.batch-table .bfile{word-break:break-all;max-width:220px;font-weight:500}.batch-table .bsyn{color:var(--color-text-soft);max-width:280px}.linkbtn{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-base);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.berr{color:var(--color-error);font-weight:700}.bstate,.gcounts{gap:4px;display:inline-flex}.gcount{font-family:var(--font-mono);font-size:var(--text-xs);text-align:center;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-text) 8%, var(--color-surface));min-width:22px;padding:2px 6px}.gcount.fix:not(.zero){color:var(--color-error);background:color-mix(in srgb, var(--color-error) 14%, var(--color-surface))}.gcount.check:not(.zero){color:var(--color-warning);background:color-mix(in srgb, var(--color-warning) 14%, var(--color-surface))}.gcount.zero{color:var(--color-text-soft)}.vpill{font-family:var(--font-mono);font-size:var(--text-sm);border-radius:var(--radius-pill);white-space:nowrap;padding:2px 8px}.bstate.queued,.bstate.canceled,.vpill.indeterminate{background:color-mix(in srgb, var(--color-text) 10%, var(--color-surface));color:var(--color-text-soft)}.bstate.analyzing{background:color-mix(in srgb, var(--color-info) 14%, var(--color-surface));color:var(--color-info)}.bstate.done,.vpill.conforme{background:color-mix(in srgb, var(--color-success) 14%, var(--color-surface));color:var(--color-success)}.bstate.error,.vpill.non-conforme{background:color-mix(in srgb, var(--color-error) 14%, var(--color-surface));color:var(--color-error)}.vpill.conforme-avert{background:color-mix(in srgb, var(--color-warning) 14%, var(--color-surface));color:var(--color-warning)}.synthese{margin-top:var(--space-md);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--color-accent) 30%, transparent);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-lg);font-size:1.05rem;line-height:1.5}.synthese:empty{display:none}.diag ul{list-style:none}.diag li{padding:11px var(--space-lg);border-bottom:1px solid var(--color-border);font-size:var(--text-md);align-items:flex-start;gap:12px;display:flex}.diag li:last-child{border-bottom:none}.diag .ok{padding:12px var(--space-lg);font-size:var(--text-md);color:var(--color-text-soft)}.badge{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-pill);flex:none;margin-top:1px;padding:3px 9px}.badge.warning{background:color-mix(in srgb, var(--color-warning) 16%, var(--color-surface));color:var(--color-warning)}.badge.info{background:color-mix(in srgb, var(--color-text) 10%, var(--color-surface));color:var(--color-text-soft)}.badge.error{background:color-mix(in srgb, var(--color-error) 14%, var(--color-surface));color:var(--color-error)}.gaps .gap-group{font-size:var(--text-sm);padding:12px var(--space-lg) 4px;border-top:1px solid var(--color-border);font-weight:700}.gaps h3+.gap-group{border-top:none}.gaps .gap-group.fix{color:var(--color-error)}.gaps li.gap{padding:10px var(--space-lg) 12px;display:block}.gap-head{align-items:flex-start;gap:10px;display:flex}.gap-title{font-weight:700;font-size:var(--text-md)}.gap-cmd summary:focus-visible,.cmd-env select:focus-visible,.cmd-param select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cmd-param,.cmd-env{font-size:var(--text-sm);align-items:center;gap:8px;margin-top:6px;display:inline-flex}.cmd-head{font-size:var(--text-sm);margin-top:12px}.cmd-nature{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-success) 14%, var(--color-surface));color:var(--color-success);padding:2px 8px}.cmd-nature.transform{background:color-mix(in srgb, var(--color-warning) 14%, var(--color-surface));color:var(--color-warning)}.cmd-warn,.cmd-warnings li{color:var(--color-warning);font-size:var(--text-sm);margin-top:6px}.cmd-warnings{margin-top:8px;list-style:none}.gaps .cmd-warnings li{border:none;padding:0;display:block}pre.cmd{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-text) 7%, var(--color-surface));border:1px solid var(--color-border);font-family:var(--font-mono);font-size:var(--text-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 6px;padding:10px 12px}.cmd-note{font-size:var(--text-sm);color:var(--color-text-soft);margin-top:6px}.verdict{border-radius:var(--radius-lg);padding:14px var(--space-md);border:1px solid;margin-top:14px}.verdict .vlabel{font-weight:700;font-size:var(--text-md);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.verdict .vmeta{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-soft);margin-top:4px}.verdict.conforme{background:color-mix(in srgb, var(--color-success) 12%, var(--color-surface));border-color:color-mix(in srgb, var(--color-success) 35%, transparent)}.verdict.conforme-avert{background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface));border-color:color-mix(in srgb, var(--color-warning) 35%, transparent)}.verdict.non-conforme{background:color-mix(in srgb, var(--color-error) 12%, var(--color-surface));border-color:color-mix(in srgb, var(--color-error) 35%, transparent)}.verdict.indeterminate{background:color-mix(in srgb, var(--color-text) 8%, var(--color-surface));border-color:var(--color-border-strong)}.vdot{border-radius:50%;flex:none;width:12px;height:12px}.verdict.conforme .vdot{background:var(--color-success)}.verdict.conforme-avert .vdot{background:var(--color-warning)}.verdict.non-conforme .vdot{background:var(--color-error)}.verdict.indeterminate .vdot{background:var(--color-text-soft)}.rulelist{margin-top:12px;list-style:none}.rulelist li{padding:var(--space-sm) 0;border-top:1px solid var(--color-border);font-size:var(--text-base);align-items:flex-start;gap:10px;display:flex}.rulelist li:first-child{border-top:none}.rmark{font-family:var(--font-mono);font-size:var(--text-md);text-align:center;flex:none;width:18px;line-height:1.3}.rmark.pass{color:var(--color-success)}.rmark.warning{color:var(--color-warning)}.rmark.error{color:var(--color-error)}.rmark.unevaluable{color:var(--color-text-soft)}.robs{color:var(--color-text-soft);font-size:var(--text-base)}.rules-quiet{margin-top:12px}.rules-quiet summary{cursor:pointer;font-size:var(--text-base);color:var(--color-text-soft)}.rules-quiet summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.conf-actions{gap:var(--space-sm);flex-wrap:wrap;margin-top:14px;display:flex}.prof-editor{margin-top:12px}.prof-editor textarea{width:100%;min-height:220px;font-family:var(--font-mono);font-size:var(--text-base);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);color:var(--color-text);resize:vertical;padding:12px;line-height:1.5}.prof-editor-bar{margin-top:var(--space-sm);gap:var(--space-sm);align-items:center;display:flex}.prof-msg{font-family:var(--font-mono);font-size:var(--text-base);color:var(--color-text-soft)}.prof-msg.error{color:var(--color-error)}.cover{padding:var(--space-md);text-align:center}.cover:empty{display:none}.cover img{border-radius:var(--radius-lg);border:1px solid var(--color-border);max-width:200px;max-height:200px}.cover figcaption{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-soft);margin-top:var(--space-sm);text-transform:uppercase;letter-spacing:.06em}.chapters-box ul{list-style:none}.chapters-box li{border-bottom:1px solid var(--color-border);font-size:var(--text-md);gap:14px;padding:6px 0;display:flex}.chapters-box li:last-child{border-bottom:none}.chapters-box .ch-t{color:var(--color-accent);font-size:var(--text-base);flex:none}.int-row{align-items:center;gap:12px;display:flex}#hashProg{flex:1;height:12px}.int-digest{font-size:var(--text-base);word-break:break-all;color:var(--color-text);margin-top:10px}.int-digest:empty{display:none}.int-verify{gap:var(--space-sm);flex-wrap:wrap;margin-top:12px;display:flex}#hashRef{min-width:240px;font-family:var(--font-mono);font-size:var(--text-base);padding:var(--space-sm) 10px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);color:var(--color-text);flex:1}.int-status{font-family:var(--font-mono);font-size:var(--text-base);color:var(--color-text-soft);margin-top:10px}.int-status.ok{color:var(--color-success)}.int-status.err{color:var(--color-error)}.s-status{font-family:var(--font-mono);font-size:var(--text-base);color:var(--color-text-soft);margin-top:10px}.s-status.err{color:var(--color-error)}.structree{font-family:var(--font-mono);font-size:var(--text-base);margin-top:12px}.s-head{font-size:var(--text-base);margin-bottom:10px}.s-verdict{font-weight:700}.s-verdict.ok{color:var(--color-success)}.s-verdict.warn{color:var(--color-warning)}.s-meta{color:var(--color-text-soft);margin-left:var(--space-sm)}.s-issues{margin:var(--space-sm) 0;color:var(--color-error);font-size:var(--text-base);padding-left:18px}.s-list{border-left:1px solid var(--color-border);margin-left:5px;padding-left:10px}.s-node>summary{cursor:pointer;padding:3px 0;list-style:none}.s-node>summary::-webkit-details-marker{display:none}.s-node>summary:before{content:"▸ ";color:var(--color-text-soft)}.s-node[open]>summary:before{content:"▾ "}.s-leaf{padding:3px 0 3px 14px}.s-name{color:var(--color-text);font-weight:600}.s-off{color:var(--color-text-soft);margin-left:10px}.s-size{color:var(--color-accent);margin-left:10px}.s-dec{color:var(--color-text);background:var(--accent-soft);border-radius:var(--radius-md);margin-left:10px;padding:0 6px}.s-an{color:var(--color-error);margin-left:10px;font-weight:600}.dot.General{background:var(--smpte-1)}.dot.Video{background:var(--smpte-3)}.dot.Audio{background:var(--smpte-4)}.dot.Text{background:var(--smpte-2)}.dot.Menu{background:var(--smpte-5)}.dot.Image{background:var(--smpte-6)}.dot.Other{background:var(--smpte-7)}.rows{padding:var(--space-sm) var(--space-lg) 14px}.row{border-bottom:1px solid var(--color-border);font-size:var(--text-md);grid-template-columns:220px 1fr;gap:14px;padding:7px 0;display:grid}.row:last-child{border-bottom:none}.row .k{color:var(--color-text-soft)}.row .v{font-family:var(--font-mono);font-size:var(--text-base);word-break:break-word}@media (max-width:560px){.row{grid-template-columns:1fr;gap:2px}}.actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}button.act{font-family:var(--font-display);font-weight:700;font-size:var(--text-base);min-height:var(--tap-target,44px);border-radius:var(--radius-lg);border:1px solid var(--color-text);background:var(--color-text);color:var(--color-bg);cursor:pointer;transition:background-color var(--t-fast), color var(--t-fast), border-color var(--t-fast);padding:10px 18px}button.act.secondary{color:var(--color-text);background:0 0}button.act:hover{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}button.act.tiny{font-size:var(--text-base);min-height:36px;padding:7px 12px}.meta-lab-footer{border-top:1px solid var(--color-border);font-size:var(--text-base);color:var(--color-text-soft);margin-top:56px;padding-top:18px}.meta-lab-footer a{color:var(--color-accent);text-decoration:underline}.routes-nav a:focus-visible,.ov-chip:focus-visible,.order button:focus-visible,.tabs [role=tab]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.route-head{margin-top:22px}.route-head h2{letter-spacing:-.01em;font-size:1.35rem}.route-lede{color:var(--color-text-soft);max-width:70ch;margin-top:6px}.route-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.route-controls label{font-weight:700}.guide{padding:12px var(--space-lg);border-radius:var(--radius-lg);background:var(--accent-soft);font-size:var(--text-base);margin-top:14px}.guide-msg{font-weight:600}.guide-list{margin:8px 0;list-style:none}.guide-list li{padding:3px 0}.guide .act{margin-top:6px}.tabs{margin-top:var(--space-md);border-bottom:1px solid var(--color-border);gap:4px;display:flex}.tabs [role=tab]{appearance:none;font:inherit;color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:600}.tabs [role=tab][aria-selected=true]{color:var(--color-text);border-bottom-color:var(--color-accent)}.overview{margin-top:var(--space-md);flex-wrap:wrap;gap:6px;display:flex}.overview:empty{display:none}.ov-chip{font-size:var(--text-sm);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);padding:5px 12px;text-decoration:none}.ov-chip:hover{border-color:var(--color-accent)}.ov-chip.zero{color:var(--color-text-soft)}.ov-chip.fix:not(.zero){color:var(--color-error);border-color:color-mix(in srgb, var(--color-error) 45%, var(--color-border))}.ov-chip.check:not(.zero){color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 45%, var(--color-border))}.ov-chip.personal{border-color:var(--color-accent)}.order{padding:10px var(--space-lg) 0;font-size:var(--text-sm);color:var(--color-text-soft);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.order span{margin-right:4px}.order button{appearance:none;font:inherit;cursor:pointer;border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-text);background:0 0;padding:3px 10px}.order button[aria-pressed=true]{background:var(--color-text);color:var(--color-surface);border-color:var(--color-text)}.prof-manage{font-size:var(--text-sm);margin-top:12px}.prof-manage summary{cursor:pointer;color:var(--color-text-soft)}.gap-scope{padding:0 var(--space-lg) 6px;font-size:var(--text-sm);color:var(--color-text-soft)}.gap-none{padding:0 var(--space-lg) 10px;font-size:var(--text-sm)}.origin{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--color-accent) 30%, var(--color-surface));color:var(--color-text);vertical-align:1px;margin-left:8px;padding:1px 7px;display:inline-block}.compare{margin-top:26px}.compare-cols{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.cmp-col{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-lg)}.cmp-letter{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-accent);font-weight:700}.cmp-name{overflow-wrap:anywhere;font-weight:700}.cmp-sum{font-size:var(--text-base);margin-top:8px}.cmp-gaps{gap:4px;margin:8px 0;display:flex}.cmp-err{color:var(--color-error);margin-top:8px}.cmp-block{margin-top:var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-md) var(--space-lg)}.cmp-block h4{font-size:var(--text-md);margin-bottom:8px}.cmp-block h5{font-size:var(--text-base);color:var(--color-text-soft);margin-top:12px}.cmp-block summary{cursor:pointer;font-weight:700}.cmp-block summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.cmp-hint{font-size:var(--text-sm);color:var(--color-text-soft);margin:6px 0}.cmp-langs{font-size:var(--text-sm);border:none;flex-wrap:wrap;gap:4px 14px;margin-top:10px;display:flex}.cmp-langs legend{margin-bottom:4px;font-weight:700}.cmp-prefs{font-size:var(--text-sm);flex-wrap:wrap;gap:8px 18px;margin:12px 0;display:flex}.cmp-tablewrap{overflow-x:auto}.cmp-table{border-collapse:collapse;width:100%;font-size:var(--text-base)}.cmp-table th,.cmp-table td{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:7px 10px}.cmp-table thead th{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;color:var(--color-text-soft)}.cmp-table tbody th{font-weight:600}.cmp-table .origin{margin-left:4px}.cmp-reasons,.cmp-indiff{color:var(--color-text-soft);font-size:var(--text-sm)}.cmp-list{font-size:var(--text-base);margin:6px 0 0 18px}.cmp-list li{padding:2px 0}.cmp-class{font-weight:700}.cmp-reco{border-radius:var(--radius-lg);background:var(--accent-soft);font-size:var(--text-base);margin-top:12px;padding:10px 12px}.cmp-recover+.cmp-recover{border-top:1px solid var(--color-border);margin-top:14px;padding-top:14px}.ab-tabs{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.ab-tabs .comp-tag{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--al-line);background:var(--al-card);color:var(--al-muted);border-radius:var(--radius-pill);font-weight:600;font-family:var(--font-mono);font-size:var(--text-xs);padding:5px 14px}.ab-tabs .comp-tag:hover{color:var(--al-ink);border-color:var(--color-border-strong)}.ab-tabs .comp-tag.on{background:var(--al-accent);border-color:var(--al-accent);color:#0b1220}.ab-panes{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0;display:grid}.ab-pane{min-width:0;margin:0}.ab-box{border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:zoom-in;background:#0b1220;position:relative;overflow:hidden}.ab-box.zoom{cursor:crosshair;height:340px}.ab-box.ab-empty{aspect-ratio:16/9;cursor:default}.ab-img{width:100%;height:auto;display:block}.ab-img.zoomed{width:auto;max-width:none;image-rendering:pixelated;position:absolute;top:50%;left:50%}.ab-pane figcaption{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-soft);margin-top:6px}@media (max-width:720px){.ab-panes{grid-template-columns:1fr}.ab-box.zoom{height:260px}}.vdesc{font-size:var(--text-sm);color:var(--color-text-soft);max-width:75ch;margin-top:8px}.vsources a{color:inherit}.privacy .privacy-dl{padding:0 var(--space-lg) 14px;margin-top:0}.privacy .ok{padding:12px var(--space-lg)}.block{--blk:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-border);border-top:3px solid var(--blk);border-radius:var(--radius-xl);margin-top:28px;scroll-margin-top:16px;overflow:hidden}.block.gaps{--blk:var(--color-warning)}.block.fixes{--blk:var(--color-success)}.block.privacy{--blk:var(--color-info)}.block-head{padding:16px var(--space-lg) 14px;border-bottom:1px solid var(--color-border)}.block-title{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-text);align-items:center;gap:10px;font-weight:600;line-height:1.2;display:flex}.block-count{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--blk) 18%, var(--color-surface));color:var(--color-text);padding:2px 9px}.block-lede{font-size:var(--text-base);color:var(--color-text-soft);max-width:75ch;margin-top:6px;line-height:1.5}.block-body{padding:14px var(--space-lg) 22px}.block-body>.block-lede{margin:0 0 6px}.block-body>.ok{font-size:var(--text-md);color:var(--color-text-soft);padding:4px 0}.block-foot{font-size:var(--text-sm);color:var(--color-text-soft);margin-top:16px}.block select{font:inherit;font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);max-width:100%;padding:5px 8px}.block select:focus-visible,.block input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.conformity .route-controls{margin-top:0}.conformity #verdict>.gap-scope{padding:10px 0 0}.fix-k{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);margin-right:6px}.block .order{padding:0 0 4px}.gap-group-wrap+.gap-group-wrap{margin-top:18px}.block .gap-group{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-soft);border:none;align-items:center;gap:8px;padding:14px 0 0;display:flex}.block .gap-group .n{border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text);padding:0 7px}.block .gap-group.fix{color:var(--color-error)}.block .gap-group.check{color:var(--color-warning)}.block .gap-scope{padding:2px 0 0}.block .gap-none{font-size:var(--text-sm);color:var(--color-text-soft);padding:6px 0 0}.gap-list{list-style:none}.block li.gap{background:var(--color-bg);border:1px solid var(--color-border);border-left:4px solid var(--color-border-strong);border-radius:var(--radius-lg);font-size:var(--text-base);margin-top:10px;padding:14px 18px;scroll-margin-top:80px;display:block}.block li.gap.sev-error{border-left-color:var(--color-error)}.block li.gap.sev-warning{border-left-color:var(--color-warning)}.block li.gap:last-child{border-bottom:1px solid var(--color-border)}.block .gap-head{align-items:center}.gap-title{font-size:var(--text-md);font-weight:700;line-height:1.3}.gap-tags{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.tag{font-family:var(--font-mono);font-size:var(--text-xs);border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-text-soft);padding:1px 8px}.facts{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-text) 6%, transparent);font-family:var(--font-mono);font-size:var(--text-sm);grid-template-columns:max-content 1fr;gap:4px 14px;margin-top:10px;padding:8px 12px;display:grid}.facts dt{text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-xs);color:var(--color-text-soft);padding-top:2px}.facts dd{overflow-wrap:anywhere;margin:0}.privacy-dl{margin-top:0}.origin.personal{color:var(--color-info);border-color:var(--color-info)}.gap-why{max-width:75ch;margin-top:10px;line-height:1.55}.gap-conf{font-size:var(--text-sm);color:var(--color-text-soft);margin-top:6px}.gap-act{border-top:1px dashed var(--color-border);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:12px;padding-top:10px;display:flex}.gap-corr{font-size:var(--text-sm);color:var(--color-text-soft)}.block.privacy .gap-act{border-top:none;padding-top:0}.fix-step{margin-top:22px}.step{font-size:var(--text-md);align-items:center;gap:10px;font-weight:700;display:flex}.step span{background:var(--blk);width:24px;height:24px;color:var(--color-bg);font-family:var(--font-mono);font-size:var(--text-sm);border-radius:50%;place-items:center;display:inline-grid}.fixes-list{list-style:none}.fix{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-base);transition:opacity var(--t-fast), border-color var(--t-fast);align-items:flex-start;gap:12px;margin-top:10px;padding:12px 16px;scroll-margin-top:80px;display:flex}.fix.off{opacity:.5}.fix.pending{border-color:var(--color-warning)}.fix-check{padding-top:2px}.fix-check input{width:18px;height:18px;accent-color:var(--color-success)}.fix-body{flex:1;min-width:0}.fix-title{font-weight:700;font-size:var(--text-md);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fix-what{margin-top:4px;line-height:1.5}.fix-why{font-size:var(--text-sm);color:var(--color-text-soft);margin-top:6px}.fix-why .linkbtn{font-size:inherit}.fix-subj{font-family:var(--font-mono);font-size:var(--text-xs)}.fix-param{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;font-weight:600;display:inline-flex}.fix.pending .fix-param select{border-color:var(--color-warning)}.fix-ba{font-family:var(--font-mono);font-size:var(--text-sm);margin-top:8px}.fix .cmd-warnings li{list-style:none}.block .cmd-env{margin-top:10px}.fix-tools{font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;display:flex}.fix-tool a{color:inherit;font-weight:600}.fix-tool code{font-family:var(--font-mono);border-radius:var(--radius-md);background:var(--color-bg);padding:1px 6px}.fix-copy{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.fix-copy .cmd-warn{margin-top:0}.fix-copy label{font-weight:600;font-size:var(--text-base);align-items:center;gap:6px;display:inline-flex}.fix-copy input{width:16px;height:16px;accent-color:var(--color-success)}.conformity #profileSelect{flex:0 380px;max-width:100%;margin-left:0}.fixes pre.cmd{background:var(--color-bg);font-size:var(--text-base);padding:14px 16px}.in-browser{border:1px solid color-mix(in srgb, var(--color-success) 45%, var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-success) 7%, var(--color-bg));margin-top:12px;padding:14px 16px}.in-browser h5{font-size:var(--text-md);font-weight:700}.in-browser .fix-what{font-size:var(--text-base);color:var(--color-text-soft);margin-top:4px}.in-browser .fix-run{margin-top:12px}.made{font-size:var(--text-sm)}.cmd-alt{font-size:var(--text-md);margin-top:20px;font-weight:700}.cmd-step+.cmd-step{margin-top:16px}.cmd-step .cmd-head{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.cmd-rank{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-soft)}.cmd-why{font-size:var(--text-sm);color:var(--color-text-soft);max-width:75ch;margin-top:4px}.fix-run{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.fix-run .cmd-note{flex:1;min-width:220px;margin-top:0}@keyframes flash{0%{box-shadow:0 0 0 3px var(--color-accent)}to{box-shadow:0 0 0 3px #0000}}.flash{animation:1.6s ease-out flash}@media (prefers-reduced-motion:reduce){.flash{outline:2px solid var(--color-accent);animation:none}}@media (max-width:640px){.block-head,.block-body{padding-left:var(--space-md);padding-right:var(--space-md)}.block li.gap{padding:12px 14px}.facts{grid-template-columns:1fr}.facts dd{margin-bottom:4px}}:root{--al-card:var(--color-surface);--al-line:var(--color-border);--al-track:color-mix(in srgb, var(--color-text) 6%, var(--color-surface));--al-ink:var(--color-text);--al-muted:var(--color-text-soft);--al-accent:#0e9f9a;--al-declared:var(--color-text-soft);--al-measured:#2e90fa;--al-shadow:0 1px 3px #1018280d, 0 14px 30px -12px #10182829;--al-disp:"Space Grotesk", "Inter", system-ui, sans-serif;--al-body:"Inter", system-ui, sans-serif;--r-card:18px;--r-mid:12px}:root[data-theme=dark]{--al-accent:#2dd4ce;--al-measured:#5ab0ff;--al-shadow:0 1px 3px #0006, 0 14px 30px -12px #0009}body{font-family:var(--al-body)}.app{max-width:1180px}.game-title{font-family:var(--al-disp);font-weight:600;font-size:var(--text-lg);letter-spacing:-.01em}.empty-wrap{min-height:58vh;padding:var(--space-lg) 0;place-items:center;display:grid}body.has-file .results{margin-top:var(--space-md)}body.has-file .status:empty,body.has-file .empty-wrap{display:none}.empty-card{text-align:center;background:var(--al-card);border:1px solid var(--al-line);border-radius:var(--r-card);box-shadow:var(--al-shadow);max-width:460px;padding:40px 36px}.empty-eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--al-muted)}.empty-card .big{font-family:var(--al-disp);letter-spacing:-.03em;margin:10px 0 6px;font-size:38px;font-weight:600}.empty-sub{color:var(--al-muted);line-height:1.6}.btn-primary{font:inherit;cursor:pointer;background:var(--al-accent);color:#0b1220;border-radius:var(--radius-pill);border:none;margin-top:20px;padding:11px 22px;font-weight:600}.btn-primary:hover{filter:brightness(1.06)}.btn-primary:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.empty-hint{font-size:var(--text-sm);color:var(--color-text-faint);margin-top:14px}.empty-modes{font-size:var(--text-sm);justify-content:center;gap:14px;margin-top:18px;display:flex}.empty-modes a{color:var(--al-muted)}.empty-modes a[aria-current=page]{color:var(--al-ink);font-weight:600}.drop,.routes-nav{display:none}[hidden]{display:none!important}#dropOverlay{z-index:40;background:color-mix(in srgb, var(--color-bg) 82%, transparent);border:2px dashed var(--al-accent);font-family:var(--font-mono);font-size:var(--text-md);letter-spacing:.08em;text-transform:uppercase;color:var(--al-ink);place-items:center;display:grid;position:fixed;inset:0}.filebar{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--al-muted);border-bottom:1px solid var(--al-line);flex-wrap:wrap;align-items:center;gap:10px;padding-bottom:14px;display:flex}.filebar .fname{font-weight:var(--mono-weight);color:var(--al-ink)}.filebar .spacer{flex:auto}.filebar .mini-badge{background:var(--color-text-faint);border-radius:50%;flex:none;width:9px;height:9px;padding:0;display:inline-block}.mini-badge.fix{background:var(--color-error)}.mini-badge.check{background:var(--color-warning)}.mini-badge.optional{background:var(--al-measured)}.mini-badge.none{background:var(--color-success)}.tabs{margin-top:var(--space-md);border-bottom:none;gap:8px}.tabs .comp-tag{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--al-line);background:var(--al-card);color:var(--al-muted);border-radius:var(--radius-pill);margin-bottom:0;padding:7px 16px;font-weight:600}.tabs .comp-tag:hover{color:var(--al-ink);border-color:var(--color-border-strong)}.tabs .comp-tag[aria-selected=true]{background:var(--al-accent);border-color:var(--al-accent);color:#0b1220}.hero-grid{gap:var(--space-sm);grid-template-columns:1.6fr 1fr;align-items:start;display:grid}.hero-grid>.block{margin-top:0}.identity .kv{font-size:var(--text-base);grid-template-columns:minmax(8ch,40%) 1fr;gap:6px 16px;display:grid}.identity .kv dt{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--al-muted);padding-top:3px}.identity .kv dd{overflow-wrap:anywhere;margin:0}@media (max-width:860px){.hero-grid{grid-template-columns:1fr}}.block,.track,.chapters-box,.integrity,.structure,.cover{border-radius:var(--r-card);box-shadow:var(--al-shadow)}.block{--blk:var(--al-accent);border-top-width:3px}.block.conformity{--blk:var(--al-accent)}.synthese{background:var(--al-track);border-color:var(--al-line)}.block-title{font-family:var(--al-disp)}.origin{background:var(--al-track);color:var(--al-muted);border-color:#0000;align-items:center;gap:6px;display:inline-flex}.origin:before{content:"";background:var(--al-declared);border-radius:50%;width:7px;height:7px}.origin.measured:before,.row .origin:before{background:var(--al-measured)}.lab-footer{border-top:1px solid var(--al-line);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-faint);flex-wrap:wrap;align-items:center;gap:10px;margin-top:40px;padding-top:18px;display:flex}.lab-footer .legend{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.lab-footer .legend span{align-items:center;gap:6px;display:inline-flex}.lab-footer .spacer{flex:auto}.lab-footer i{border-radius:50%;width:8px;height:8px;display:inline-block}.i-d{background:var(--al-declared)}.i-m{background:var(--al-measured)}.i-a{background:var(--color-error)}.i-w{background:var(--color-warning)}.meta-lab-footer{border-top:none;margin-top:18px}@media (max-width:640px){.empty-card{padding:28px 20px}.empty-card .big{font-size:30px}}#panelDetails .grid{gap:var(--space-sm);margin-top:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-items:start;display:grid}#panelDetails .tools-grid{margin-top:var(--space-md)}.card{background:var(--al-card);border:1px solid var(--al-line);border-radius:var(--r-card);box-shadow:var(--al-shadow);margin-top:0;padding:16px 18px 18px}.card-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.card-head h3{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.08em;color:var(--al-muted);flex:auto}.card-sub{font-size:var(--text-sm);color:var(--al-muted);margin-top:6px}.epi{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--mono-weight);letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius-pill);color:var(--al-muted);background:var(--al-track);align-items:center;gap:6px;padding:4px 9px;display:inline-flex}.epi:before{content:"";background:var(--al-declared);border-radius:50%;width:7px;height:7px}.epi-measured:before{background:var(--al-measured)}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(88px,1fr));gap:8px;margin-top:12px;display:grid}.kpi{background:var(--al-track);border-radius:var(--r-mid);flex-direction:column;gap:3px;padding:9px 11px;display:flex}.kpi-lbl{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--al-muted)}.kpi-val{font-family:var(--al-disp);letter-spacing:-.02em;color:var(--al-ink);font-size:19px;font-weight:600;line-height:1.1}.kpi-unit{font-family:var(--al-body);font-size:var(--text-sm);color:var(--al-muted);font-weight:400}.card .kv{font-size:var(--text-base);grid-template-columns:minmax(8ch,42%) 1fr;gap:5px 12px;margin-top:14px;display:grid}.card .kv dt{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--al-muted);padding-top:3px}.card .kv dd{overflow-wrap:anywhere;margin:0}.card .kv .origin{margin-left:6px}.card.tool .act{margin-top:12px}.card.tool .structree{max-height:320px;margin-top:12px;overflow:auto}.card.tool .int-row{margin-top:12px}.card.tool .int-digest{overflow-wrap:anywhere;margin-top:10px}.card.tool .int-verify{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.card.tool .int-verify input{flex:220px}.cover-card img{border-radius:var(--r-mid);max-width:100%;margin-top:12px}.cover-card figure,.cover-card figcaption{margin:0}.chapters-card .chapters-box{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.chapters-card .chapters-box h3{padding:0}.batch,.compare{background:var(--al-card);border:1px solid var(--al-line);border-radius:var(--r-card);box-shadow:var(--al-shadow);margin-top:28px;padding:16px 18px 18px}.batch .card-head h3,.compare .card-head h3{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.08em;color:var(--al-muted)}.batch-bar{margin-top:12px}.batch-filters button{border-radius:var(--radius-pill);border:1px solid var(--al-line);background:var(--al-card);color:var(--al-muted);padding:6px 14px;font-weight:600}.batch-filters button:hover{color:var(--al-ink);border-color:var(--color-border-strong)}.batch-filters button.on{background:var(--al-accent);border-color:var(--al-accent);color:#0b1220}.batch-tablewrap,.cmp-tablewrap{border:1px solid var(--al-line);border-radius:var(--r-mid);background:var(--color-bg)}.batch-table th,.cmp-table th{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.06em;color:var(--al-muted);background:var(--al-track)}.batch-table tbody tr:hover,.cmp-table tbody tr:hover{background:var(--al-track)}.batch-table .gcounts,.cmp-gaps{white-space:nowrap;flex-wrap:nowrap;align-items:center}.batch-table .gcount,.cmp-gaps .gcount{font-size:var(--text-xs);padding:2px 8px}.compare-cols{gap:var(--space-sm)}.cmp-col.card{background:var(--color-bg)}.cmp-letter{background:var(--al-accent);color:#0b1220;width:24px;height:24px;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.cmp-name{overflow-wrap:anywhere;margin-top:8px;font-weight:600}.cmp-col .kpi-row{grid-template-columns:repeat(auto-fit,minmax(76px,1fr))}.cmp-sum{font-size:var(--text-base);color:var(--al-muted);margin-top:12px}.cmp-col .act{margin-top:12px}.cmp-block{background:var(--color-bg);border:1px solid var(--al-line);border-radius:var(--r-card);margin-top:var(--space-sm);padding:16px 18px 18px}.cmp-block h4{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--mono-weight);text-transform:uppercase;letter-spacing:.08em;color:var(--al-muted);margin-bottom:10px}.cmp-reco{background:color-mix(in srgb, var(--al-accent) 12%, var(--color-bg));border-radius:var(--r-mid)}.block.measure{--blk:var(--al-measured)}.measure .kpi-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.measure progress{vertical-align:middle;width:220px}.spark{width:100%;height:90px;color:var(--al-measured);margin-top:14px;display:block}.measure .act{margin-top:14px}.measure .loud{border-top:1px solid var(--al-line);margin-top:18px;padding-top:16px}.measure .loud .act{margin-top:12px}
