A01 revision-bound content review — Document content intake, factual/asset checks, review decisions and release approval against the exact draft revision, so requested…

HTML for this example

Select the code and use your copy shortcut. Changes in this preview are temporary.

<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>A01 revision-bound content review</title><style>*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,sans-serif;color:var(--ink);background:var(--bg)}main{max-width:1120px;margin:auto;padding:30px}h1{font-size:clamp(30px,4vw,44px);line-height:1.12;letter-spacing:-.035em;margin:5px 0 12px}h2{font-size:23px;line-height:1.3;margin:0 0 15px}h3{font-size:17px;margin:0 0 8px}p{margin:0 0 12px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:750;color:var(--accent)}.small,footer{font-size:13px;color:var(--muted)}footer{margin:27px 0}.panel{background:white;border:1px solid var(--line);padding:23px;border-radius:9px;margin-top:22px}.two{display:grid;grid-template-columns:1.35fr 1fr;gap:23px}.row{display:flex;gap:9px;flex-wrap:wrap;align-items:center}button{font:700 14px system-ui;min-height:44px;padding:10px 16px;border:1px solid var(--accent);background:var(--accent);color:white;border-radius:5px;cursor:pointer}button.secondary{color:var(--accent);background:white}button[aria-pressed=true]{box-shadow:inset 0 0 0 2px var(--ink)}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:3px solid #d28b25;outline-offset:3px}label{display:block;font-size:13px;font-weight:650}input,textarea,select{display:block;width:100%;padding:11px;font:16px/1.5 system-ui;color:var(--ink);background:white;border:1px solid #9baab6;border-radius:4px;margin:6px 0 15px}textarea{min-height:100px;resize:vertical}.error{color:#a02b20;font-size:14px;min-height:23px}.result{font-size:40px;line-height:1.25;letter-spacing:-.04em;font-weight:750}.notice{padding:15px;background:#fff3db;border-left:4px solid #cf9d3e;font-size:14px;margin:16px 0}details{margin-top:23px;border-top:1px solid var(--line);padding-top:15px}summary{cursor:pointer;min-height:44px;font-weight:700}.time-row{display:grid;grid-template-columns:75px 1fr 70px;gap:14px;padding:15px 0;border-top:1px solid var(--line)}.time-row p{font-size:14px;margin:5px 0}.time-row input{margin:0;text-align:center}.range{font-size:13px;font-weight:700;color:var(--accent)}[hidden]{display:none!important}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.6 ui-monospace,Consolas,monospace} @media(max-width:740px){main{padding:23px 16px}.two{grid-template-columns:1fr;gap:0}.panel{padding:20px}}@media(max-width:380px){main{padding:20px 12px}.panel{padding:17px}.time-row{grid-template-columns:1fr 65px}.range{grid-column:1/-1}.row button{flex:1}}:root{--ink:#49333e;--bg:#f8f3f4;--accent:#92506a;--muted:#816875;--line:#e0cfd6}h1{font-family:Georgia,serif;font-weight:500}.sheet{margin-top:25px;padding:26px;background:#fff;border:1px solid var(--line);border-top:6px solid #92506a;border-radius:7px}.history{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:21px 0}.history div{border:1px solid var(--line);border-radius:6px;padding:16px}.history strong{display:block;font-size:20px}.history p{font-size:13px;margin:7px 0 0}.focus-record{background:#f6eaf0;padding:22px;border-left:4px solid var(--accent);border-radius:5px}.focus-record h2{font:30px Georgia,serif}.facts,.inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.fact{padding:18px;background:#fff7e7;border:1px solid #e5d2ab;border-radius:6px}.fact p{font-size:14px}.status{font-size:21px;font-weight:750}.gap-list{padding-left:21px;font-size:14px}.procedure{padding-left:25px}.procedure li{padding:12px 0;border-top:1px solid var(--line)}.procedure p{font-size:14px;margin:5px 0 0}.packet textarea{min-height:330px;font:13px/1.7 ui-monospace,Consolas,monospace}@media(max-width:640px){.history,.facts,.inputs{grid-template-columns:1fr}.history div{padding:13px}.sheet{padding:20px}}</style></head><body><main><p class="eyebrow">Maple Studio · original fictional content review</p><h1>Approve the revision being released.</h1><p>A01 rev1 has changes requested; rev2 needs its own review decision.</p><article class="sheet"><div class="row"><button id="view-rev1" type="button" class="secondary">A01 rev1</button><button id="view-c01" type="button" class="secondary">C01 · feedback</button><button id="view-rev2" type="button" aria-pressed="true">A01 rev2</button></div><div class="history"><div><strong>A01 rev1</strong><p>Mia’s draft · unsupported date and missing image permission evidence</p></div><div><strong>C01</strong><p>Jo requests changes on rev1 · not approval</p></div><div><strong>A01 rev2</strong><p>Submitted for re-review in the illustrative sequence · decision missing</p></div></div><section class="focus-record" role="status"><p class="eyebrow" id="record-id">A01 · rev2</p><h2 id="record-title">Awaiting review</h2><p id="record-detail">Actual final artifact, evidence and reviewer decision are not supplied. A rev1 decision cannot approve rev2.</p><p id="decision-scope" class="small"></p><p id="record-next" class="small">Identify the exact revised artifact and request its own decision.</p></section><div class="facts"><div class="fact"><h3>Claim check · B01</h3><p>Rev1 says “Workshop November 21.” B01 says date <strong>TO CONFIRM</strong>.</p><p>Omit the unconfirmed date, or use approved lookup wording and a verified destination only if actually supplied.</p></div><div class="fact"><h3>Asset check · R01</h3><p>Reference image permission evidence is absent.</p><p>Supply the actual required basis for intended use, or omit the image. “Permission requested” is not permission obtained.</p></div></div></article><div class="two"><section class="panel"><h2>Response plan for C01</h2><p class="small">Proposed responses, not an accepted revision or legal clearance.</p><label for="date-response">Planned response to unsupported date<textarea id="date-response">Omit November 21. Use replacement lookup wording only if its approved wording and verified destination are actually supplied.</textarea></label><label for="image-response">Planned response to missing R01<textarea id="image-response">Omit the image unless the required actual permission basis for its intended use is supplied.</textarea></label><label for="recipient">Intended next-review recipient<input id="recipient" value="Assigned reviewer Jo · confirm the actual process"></label><p id="draft-error" class="error" role="alert"></p></section><section class="panel"><h2>Rev2 pre-release evidence</h2><p id="readiness" class="status">Evidence and decision unresolved</p><ul id="gaps" class="gap-list"></ul><p class="small">Entries below prepare unverified references. They do not verify evidence, grant authority, approve rev2 or record publication.</p><p><strong>Actual published artifact:</strong> not supplied. A pre-release check is not an actual release.</p></section></div><section class="panel"><h2>Prepare the native review record</h2><div id="evidence-fields" class="inputs"></div><label for="conditions">Unresolved conditions / actual exception route<textarea id="conditions" placeholder="Owner and exception process: to confirm"></textarea></label></section><section class="panel"><h2>Content approval procedure · draft for owner review</h2><p class="small">SOP ID/revision, owner, approval and effective date: TO CONFIRM. Scope: content intake through authorized release preparation and actual release records.</p><ol class="procedure"><li><strong>Capture intake</strong><p>Request owner identifies purpose, audience/channel, maintained brief and exact asset/revision; leave gaps visible.</p></li><li><strong>Check claims and assets</strong><p>Author and evidence owners retain claim/source and intended-use permission checklists.</p></li><li><strong>Submit exact draft</strong><p>Author supplies the revision and artifact reference so the reviewer can identify the content.</p></li><li><strong>Record explicit review</strong><p>Assigned reviewer records approve, request changes or reject with asset/revision, reason, conditions and actual decision reference. “Reviewed” alone is insufficient.</p></li><li><strong>Address feedback</strong><p>Author responds to each change and preserves the previous version and decision history.</p></li><li><strong>Re-review revised artifact</strong><p>Reviewer records its own decision; prior decisions do not carry forward.</p></li><li><strong>Prepare authorized release</strong><p>Verify exact-revision approval, retained claims/assets, audience/channel, open conditions and actual release authority.</p></li><li><strong>Record actual release</strong><p>Only after authorized publication, retain the published artifact/version reference in the maintained workflow.</p></li></ol></section><section class="panel packet"><div class="row" style="justify-content:space-between"><h2>Exact handoff draft</h2><button id="select-packet" type="button">Select text</button></div><label for="packet">Native-record preparation text · manual copy<textarea id="packet" readonly></textarea></label><p id="select-status" class="small" role="status"></p></section><footer>HTML review/plain-text companion to controlled SOP, artifact and decision records. No actual approval, scheduling, posting, ad buying, notification, permission/legal clearance, campaign result or saved edits. Confirm real roles, SOP owner, effective date and exception process.</footer></main><script>
'use strict';const $=id=>document.getElementById(id);

const source={asset:'A01',rev1:'Workshop November 21',brief:'B01: date TO CONFIRM',permission:'R01 absent',decision:{id:'C01',revision:'rev1',value:'request changes'},rev2:'awaiting review'};let view='rev2';const required=[['artifact','Exact rev2 artifact reference'],['decision','Actual rev2 reviewer decision / record reference'],['claim','Current basis for retained factual claims'],['asset-basis','Required asset basis or actual omission reference'],['audience','Confirmed audience and channel'],['release-authority','Actual release owner / authority reference']];function decisionFor(revision,record){if(!record||record.revision!==revision)return'No decision on this revision';return record.value==='approve'?'Recorded approval still needs artifact/evidence/authority verification':record.value==='request changes'?'Changes requested; not approved':record.value==='reject'?'Rejected; not approved':'Unrecognized decision; clarify the native record';}function missing(values){return required.filter(([id])=>!values[id].trim()).map(([,label])=>label);}function renderSource(){for(const id of['rev1','c01','rev2'])$('view-'+id).setAttribute('aria-pressed',String(id===view));$('record-id').textContent=view==='c01'?'C01 · A01 rev1':'A01 · '+view;const r={rev1:['Draft with unresolved evidence','Mia’s rev1 says “Workshop November 21,” while B01 says date TO CONFIRM. R01 is absent.','Preserve rev1 and route both evidence gaps through review.'],c01:['Changes requested · not approved','Jo’s C01 applies to A01 rev1 and identifies both unsupported date and missing R01 permission evidence.','Respond to each change and submit the exact revised artifact for re-review.'],rev2:['Awaiting review','Actual final artifact, evidence and reviewer decision are not supplied. A rev1 decision cannot approve rev2.','Identify the exact revised artifact and request its own reviewer decision.']}[view];$('record-title').textContent=r[0];$('record-detail').textContent=r[1];$('record-next').textContent='Next handoff: '+r[2];$('decision-scope').textContent=decisionFor(view==='rev2'?'rev2':'rev1',source.decision);}function update(){const values=Object.fromEntries(required.map(([id])=>[id,$(id).value]));const gaps=missing(values);$('gaps').replaceChildren();for(const gap of gaps){const li=document.createElement('li');li.textContent=gap+' · not supplied';$('gaps').appendChild(li);}$('readiness').textContent=gaps.length?'Evidence and decision unresolved':'Draft references entered · verify in native records';const valid=['date-response','image-response','recipient'].every(id=>$(id).value.trim());$('draft-error').textContent=valid?'':'Supply both response plans and the intended review recipient.';$('packet').value=valid?['MAPLE STUDIO · FICTIONAL A01 REVISION REVIEW','SOP ID/revision, owner, approval/effective date: TO CONFIRM.','Intake: workshop announcement; audience/channel TO CONFIRM; author Mia; reviewer Jo; actual release authority TO CONFIRM.','A01 rev1: Workshop November 21; B01 date TO CONFIRM; R01 absent.','C01: Jo requests changes on rev1. Not approval of either revision.','A01 rev2: awaiting its own review; final artifact/evidence/decision not supplied.','PROPOSED RESPONSES · NOT ACCEPTANCE','Date: '+$('date-response').value.trim(),'Image: '+$('image-response').value.trim(),'Intended reviewer: '+$('recipient').value.trim(),'USER-ENTERED REFERENCES · UNVERIFIED',...required.map(([id,label])=>label+': '+(values[id].trim()||'[not supplied]')),'Conditions / exception route: '+($('conditions').value.trim()||'[not supplied]'),'Preparation state: '+$('readiness').textContent,'Actual release / published artifact reference: [not supplied].','REUSABLE REVIEW ROW: asset ID __; exact revision __; reviewed artifact __; reviewer __; approve/request changes/reject __; reason __; conditions __; actual decision reference __.','PROCEDURE: capture intake; check claims/assets; submit exact draft; record review; address feedback; re-review new revision; verify release prerequisites/authority; record actual publication only after it occurs.','No approval, permission, publication or notification is created here.'].join(String.fromCharCode(10)):'';$('select-packet').disabled=!valid;$('select-status').textContent='';}for(const[id,text]of required){const l=document.createElement('label');l.setAttribute('for',id);l.textContent=text;const field=document.createElement('input');field.id=id;field.addEventListener('input',update);l.appendChild(field);$('evidence-fields').appendChild(l);}for(const id of['rev1','c01','rev2'])$('view-'+id).addEventListener('click',()=>{view=id;renderSource();});for(const id of['date-response','image-response','recipient','conditions'])$(id).addEventListener('input',update);$('select-packet').addEventListener('click',()=>{$('packet').focus();$('packet').select();$('select-status').textContent='Draft text selected. Copy manually; no review or publication action occurred.';});renderSource();update();
</script></body></html>