/* ELEVATED BRAND SYSTEM v2 — "Instrumentation Grade"
     --signal appears only on live states (active field, fresh chain link).
     --brass is reserved for the certification moment: the chain-verified seal.
     --parchment is reserved for delivered-report content. */
*{box-sizing:border-box;margin:0;padding:0;}
  html,body{background:var(--ink);color:var(--parchment);}
  body{
    font-family:'IBM Plex Mono',monospace;
    font-size:15px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    padding:0 0 80px 0;
  }
  .wrap{max-width:760px;margin:0 auto;padding:0 24px;}

  header{
    padding:56px 0 40px 0;
    border-bottom:1px solid var(--line);
    margin-bottom:40px;
  }
  .mark{
    font-weight:600;
    font-size:clamp(34px,7vw,54px);
    letter-spacing:0.04em;
    line-height:0.95;
    text-transform:uppercase;
    color:var(--parchment);
  }
  .mark span{color:var(--ash);}
  .tagline{
    font-size:16px;
    color:var(--ash);
    margin-top:14px;
    max-width:46ch;
    line-height:1.65;
  }

  section{margin-bottom:44px;}
  h2{
    font-weight:600;
    font-size:15px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--parchment);
    margin-bottom:16px;
  }

  .card{
    background:var(--graphite);
    border:1px solid var(--line);
    padding:24px;
  }

  form{display:grid;gap:14px;}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  label{
    display:block;
    font-size:12px;
    color:var(--ash);
    margin-bottom:6px;
  }
  input{
    width:100%;
    background:var(--ink);
    border:1px solid var(--line);
    color:var(--parchment);
    font-family:'IBM Plex Mono',monospace;
    font-size:14px;
    padding:11px 12px;
  }
  input:focus{outline:none;border-color:var(--signal);}
  input::placeholder{color:#555;}

  button{
    font-family:'IBM Plex Mono',monospace;
    font-weight:600;
    font-size:13px;
    letter-spacing:0.02em;
    border:none;
    cursor:pointer;
    padding:13px 20px;
  }
  .btn-primary{
    background:var(--signal);
    color:var(--ink);
  }
  .btn-primary:hover{background:#ff6a24;}
  .btn-secondary{
    background:transparent;
    color:var(--parchment);
    border:1px solid var(--line);
  }
  .btn-secondary:hover{border-color:var(--ash);}
  .btn-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;}

  .stat-row{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:20px;}
  .stat{flex:1;min-width:140px;}
  .stat .num{
    font-weight:600;
    font-size:30px;
    color:var(--parchment);
  }
  .stat .num.accent{color:var(--signal);}
  .stat .lbl{font-size:12px;color:var(--ash);}

  .ledger{border:1px solid var(--line);}
  .entry{
    display:grid;
    grid-template-columns:28px 1fr auto;
    gap:14px;
    padding:14px 16px;
    border-bottom:1px solid var(--line);
    align-items:start;
  }
  .entry:last-child{border-bottom:none;}
  .entry .idx{
    font-size:15px;
    font-weight:600;
    font-variant-numeric:tabular-nums;
    color:var(--ash);
  }
  .entry .body .action{color:var(--parchment);font-size:14px;}
  .entry .body .meta{
    color:var(--ash);
    font-size:11px;
    margin-top:4px;
    word-break:break-all;
  }
  .entry .cost{
    font-size:14px;
    color:var(--parchment);
    white-space:nowrap;
  }
  .empty{
    padding:32px 16px;
    text-align:center;
    color:var(--ash);
    font-size:13px;
  }

  .cap-banner{
    display:none;
    background:var(--graphite);
    border:1px solid var(--signal-dim);
    padding:20px 24px;
    margin-top:16px;
  }
  .cap-banner.show{display:block;}
  .cap-banner .h{
    font-weight:600;
    font-size:13px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--parchment);
    margin-bottom:6px;
  }
  .cap-banner p{font-size:13px;color:var(--ash);margin-bottom:14px;}

  .verify{
    margin-top:16px;
    font-size:12px;
    color:var(--ash);
  }
  .verify.ok{color:var(--brass);}
  .verify.bad{color:var(--signal);}

  /* the certification moment: a brass seal stamps in when the chain verifies */
  .seal{
    display:inline-block;
    border:1.5px solid var(--brass);
    color:var(--brass);
    padding:5px 14px;
    font-size:11px;
    font-weight:600;
    letter-spacing:0.14em;
    text-transform:uppercase;
    transform:rotate(-3deg);
  }
  .seal.stamp{animation:seal-stamp .35s ease-out;}
  @keyframes seal-stamp{
    from{transform:scale(1.5) rotate(-9deg);opacity:0;}
    to{transform:scale(1) rotate(-3deg);opacity:1;}
  }

  /* chain-lock: the newest entry visibly locks into the chain */
  .entry{
    border-left:2px solid transparent;
    transition:border-color .45s ease;
  }
  .entry.fresh{border-left-color:var(--signal);}
  .entry .meta{transition:color .45s ease;}
  .entry.fresh .meta{color:var(--signal);}

  @media (prefers-reduced-motion: reduce){
    .btn-primary,.btn-secondary,.entry,.entry .meta{transition:none;}
    .seal.stamp{animation:none;}
  }

  footer{
    margin-top:60px;
    padding-top:24px;
    border-top:1px solid var(--line);
    font-size:12px;
    color:var(--ash);
  }
  footer a{color:var(--signal);text-decoration:none;}
