<div class="scene"><div class="source"><span id="source">raw HTML string</span><b id="kind">STRING</b></div><div class="flow"><span class="path">INPUT</span><span class="gate" id="gate">POLICY GATE</span><span class="path">DOM</span></div><div class="result" id="result">blocked by CSP</div><div class="note">Conceptual flow: policy + CSP required</div></div>
.scene{width:min(94vw,800px);height:min(86vh,320px);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:clamp(9px,2.4vmin,20px);font:500 clamp(15px,4vmin,18px)/1.3 var(--font-sans,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif)}.scene b,.scene strong{font-weight:700}.label{color:var(--muted)}.code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.pill{border:1px solid var(--line);border-radius:8px;padding:.4em .65em;background:var(--bg)}.active{border-color:var(--accent)!important;color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 10%,var(--surface))!important}.source,.flow,.result{display:flex;align-items:center;justify-content:space-between;gap:7px}.source{border:1px solid var(--line);border-radius:8px;padding:.55em;font-size:clamp(13px,3.7vmin,17px)}.source b{font:700 clamp(12px,3vmin,14px) ui-monospace,monospace;color:var(--accent-3)}.flow{flex:1;min-height:60px}.path{font:700 clamp(12px,3vmin,14px) ui-monospace,monospace}.gate{border:2px solid var(--accent-3);border-radius:8px;padding:.5em;text-align:center;font:700 clamp(12px,3vmin,14px) ui-monospace,monospace;transition:border-color .3s,background .3s}.gate.pass{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,var(--surface))}.result{justify-content:center;border-radius:8px;padding:.45em;background:color-mix(in srgb,var(--accent-3) 16%,var(--surface));color:var(--accent-3);font-weight:700}.result.pass{background:color-mix(in srgb,var(--accent) 16%,var(--surface));color:var(--accent)}.note{font-size:clamp(12px,3vmin,14px);color:var(--muted);text-align:center}
let trusted=false;function tick(){trusted=!trusted;document.getElementById("source").textContent=trusted?"policy-created HTML":"raw HTML string";document.getElementById("kind").textContent=trusted?"TRUSTED":"STRING";document.getElementById("kind").style.color=trusted?"var(--accent)":"var(--accent-3)";document.getElementById("gate").classList.toggle("pass",trusted);document.getElementById("result").classList.toggle("pass",trusted);document.getElementById("result").textContent=trusted?"accepted by DOM":"blocked by CSP"}tick();setInterval(tick,1400)