:root{--ink:#111;--muted:#6b6b6b;--line:#e6e2d8;--paper:#faf8f3;--ok:#1f7a3f;--warn:#b7531c;--accent:#0b3d5c}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}
main{max-width:720px;margin:0 auto;padding:20px 16px 60px}.brand{font-weight:800;letter-spacing:.14em;font-size:12px;color:var(--accent)}.brand span{font-weight:400}
h1{font-size:26px;margin:14px 0 2px}.sub{color:var(--muted);margin-bottom:14px}.intro{margin:0 0 14px}.muted{color:var(--muted)}
.bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:10px;margin:10px 0}
.who{margin:8px 0 18px;font-size:14px;color:var(--muted)}.who input{margin-left:8px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:15px;width:min(260px,60vw)}
.item{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;margin:0 0 16px}.item header{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.num{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.item h2{font-size:17px;margin:0;flex:1}.pill{font-size:12px;padding:3px 9px;border-radius:999px;background:#eee}
.state-approved .pill{background:#dff3e5;color:var(--ok)}.state-changes_requested .pill{background:#fbe6d8;color:var(--warn)}
.media{margin:12px 0}.media img,.media video{width:100%;max-height:560px;object-fit:contain;background:#f1efe9;border-radius:8px;display:block;margin-bottom:8px}
.meta{font-size:13px;color:var(--muted);margin:6px 0}.caption{white-space:pre-wrap;font:inherit;background:#fbfaf7;border:1px solid var(--line);border-radius:8px;padding:12px;margin:8px 0}
.comment{font-size:14px;background:#fff7f0;border:1px solid #f1d9c6;border-radius:8px;padding:10px;margin:8px 0}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}button{font:inherit;font-size:15px;padding:10px 16px;border-radius:9px;border:1px solid var(--line);background:#fff;cursor:pointer}
button.approve{background:var(--ok);color:#fff;border-color:var(--ok)}button.changes{color:var(--warn);border-color:#f1d9c6}button.link{border:0;background:none;color:var(--muted)}
.state-approved .actions button.approve,.state-changes_requested .actions button.changes{opacity:.5}
.changebox{margin-top:10px;display:flex;flex-direction:column;gap:8px}.changebox textarea{font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px}
footer{margin-top:24px;font-size:13px;color:var(--muted)}footer a{color:var(--accent)}
@media(max-width:480px){h1{font-size:22px}.actions button{flex:1}}
