
:root { --ink:#1a1a1a; --quiet:#5c5c5c; --rule:#d8d8d8; --page:#fff;
        --caution:#8a4b00; --caution-bg:#fdf3e7; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.55 system-ui, sans-serif; color:var(--ink);
       background:var(--page); }
main { max-width:52rem; margin:0 auto; padding:1.5rem 1rem 4rem; }
.masthead { display:flex; gap:1rem; align-items:center; justify-content:space-between;
            border-bottom:1px solid var(--rule); padding:.75rem 1rem; }
.masthead nav { display:flex; gap:1rem; }
.masthead a { color:var(--ink); text-decoration:none; }
.masthead a:hover, .masthead a:focus { text-decoration:underline; }
.whoami { color:var(--quiet); font-size:.875rem; }
h1 { font-size:1.6rem; margin:1.5rem 0 .5rem; }
h2 { font-size:1.1rem; margin:2rem 0 .5rem; }
.surface-section { border-top:1px solid var(--rule); padding-top:.25rem; }
.facts { display:grid; grid-template-columns:max-content 1fr; gap:.25rem 1rem; margin:0; }
.facts dt { color:var(--quiet); }
.facts dd { margin:0; }

/* `U-2`. **Three of these four are visually quiet on purpose.** An unknown Nova has not
   judged must not read as a fault, so only `cautionary` carries colour. */
.note { margin:.4rem 0; padding:.5rem .75rem; border-left:3px solid var(--rule); }
.note-neutral { border-left-color:var(--rule); }
.note-progress { border-left-color:var(--quiet); }
.note-affirmative { border-left-color:var(--quiet); }
.note-cautionary { border-left-color:var(--caution); background:var(--caution-bg);
                   color:var(--caution); }

.excerpt { margin:.75rem 0; padding-left:.75rem; border-left:3px solid var(--rule); }
.excerpt blockquote { margin:0; }
.excerpt figcaption { color:var(--quiet); font-size:.875rem; }
.absence { color:var(--quiet); }
.chronology { padding-left:1.25rem; }

.actions { display:flex; flex-wrap:wrap; gap:.75rem; margin:1rem 0; align-items:start; }
.action { font:inherit; padding:.5rem .9rem; border:1px solid var(--ink);
          background:var(--ink); color:#fff; cursor:pointer; }
/* **Withheld actions are described, not greyed.** A disabled control says *not for you*,
   *not yet* and *broken* identically. */
.withheld { border:1px dashed var(--rule); padding:.5rem .75rem; color:var(--quiet);
            max-width:22rem; }
.withheld-label { font-weight:600; }
.withheld-why, .withheld-who { margin:.25rem 0 0; font-size:.9rem; }
.refusal { border:1px solid var(--caution); background:var(--caution-bg);
           padding:.75rem 1rem; }
.refusal-code code { color:var(--quiet); }
.page-footer { border-top:1px solid var(--rule); color:var(--quiet);
               padding:1rem; text-align:center; font-size:.875rem; }
