/* AI Audit Exchange — the reading room of the audit market.
   Cooler institutional slate, tabular dockets, verdigris seals.
   Deliberately NOT ReviewDesk's warm clerk's desk and NOT a passport cover. */
:root{
  --ink:#16232E; --slate:#1B2A3A; --steel:#243746; --mist:#E8EDF2; --paper:#F4F6F8;
  --line:#C6D0D9; --seal:#2E6E6A; --seal-soft:#DCEBE9; --oxblood:#7A2E2E; --brass:#8A6D3B;
  --txt:#1D2A35; --muted:#5A6B78;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--txt);font-family:Inter,system-ui,sans-serif;line-height:1.55}
a{color:var(--seal)} a:hover{text-decoration:underline}
h1,h2,h3{font-family:Fraunces,Georgia,serif;color:var(--ink);line-height:1.15}
h1{font-size:2.3rem;font-weight:900} h2{font-size:1.45rem;font-weight:600}
.mono,.small.mono{font-family:"IBM Plex Mono",monospace}
.small{font-size:.86rem;color:var(--muted)}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;
  background:var(--slate);color:var(--mist);padding:.7rem 1.2rem;border-bottom:4px double var(--seal)}
.topbar a{color:var(--mist);text-decoration:none;margin-left:1rem;font-size:.95rem}
.topbar a:hover{color:#fff}
.brand{font-family:Fraunces,Georgia,serif;font-size:1.25rem;font-weight:900;margin-left:0!important;display:flex;align-items:center;gap:.6rem}
.seal-mini{display:inline-flex;width:2rem;height:2rem;border:2px solid var(--seal);border-radius:50%;
  align-items:center;justify-content:center;font-size:.72rem;font-family:"IBM Plex Mono",monospace;color:var(--mist);background:var(--steel)}
main{max-width:1060px;margin:0 auto;padding:1.6rem 1.1rem 3rem}
.hero{padding:1.4rem 0 .6rem}
.kicker{font-family:"IBM Plex Mono",monospace;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:var(--seal);font-weight:600}
.lede{font-size:1.12rem;max-width:46rem;color:var(--steel)}
.docket-strip{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.1rem}
.docket-strip span{font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.08em;
  border:1px solid var(--line);border-left:4px solid var(--seal);background:#fff;padding:.35rem .6rem;color:var(--steel)}
.card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--steel);
  padding:1.3rem 1.4rem;margin:1.1rem 0;box-shadow:0 1px 2px rgba(22,35,46,.05)}
.card.featured{border-top-color:var(--seal)}
.card.narrow{max-width:520px;margin:2rem auto}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.price{font-family:Fraunces,Georgia,serif;font-size:2.2rem;font-weight:900;color:var(--ink);margin:.3rem 0}
.price span{font-size:1rem;color:var(--muted)}
.btn{display:inline-block;background:var(--seal);color:#fff;border:0;border-radius:3px;
  padding:.6rem 1.1rem;font-weight:600;cursor:pointer;text-decoration:none;font-size:.97rem}
.btn:hover{background:#265c58;text-decoration:none}
.btn.soft{background:var(--mist);color:var(--steel);border:1px solid var(--line)}
.btn.small{padding:.32rem .7rem;font-size:.86rem}
.btn.danger{background:var(--oxblood)}
label{display:block;margin:.7rem 0;font-weight:600;font-size:.94rem}
input,select,textarea{display:block;width:100%;max-width:520px;margin-top:.3rem;padding:.55rem .65rem;
  border:1px solid var(--line);border-radius:3px;background:#fff;font:inherit}
input[type=file]{border:0;padding-left:0}
table.docket{width:100%;border-collapse:collapse;margin:.8rem 0;font-size:.94rem}
table.docket th{font-family:"IBM Plex Mono",monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;
  text-align:left;color:var(--muted);border-bottom:2px solid var(--steel);padding:.45rem .5rem}
table.docket td{border-bottom:1px solid var(--line);padding:.5rem;vertical-align:top}
table.docket tr:nth-child(even) td{background:#FAFBFC}
.source-badge{display:inline-block;font-family:"IBM Plex Mono",monospace;font-size:.74rem;font-weight:600;
  border:1.5px solid var(--seal);color:var(--seal);border-radius:3px;padding:.14rem .45rem;transform:rotate(-1.2deg)}
.badge{font-family:"IBM Plex Mono",monospace;font-size:.74rem;padding:.15rem .5rem;border-radius:3px;border:1.5px solid var(--brass);color:var(--brass)}
.badge.vetted{border-color:var(--seal);color:var(--seal)} .badge.rejected{border-color:var(--oxblood);color:var(--oxblood)}
.progress{height:12px;background:var(--mist);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.progress .bar{height:100%;background:linear-gradient(90deg,var(--steel),var(--seal));transition:width .8s ease}
.checklist{list-style:none;padding:0} .checklist li{padding:.3rem 0;border-bottom:1px dashed var(--line)}
.checklist li.done{color:var(--seal);font-weight:600}
.hold-banner{background:#F7E8E8;border:1.5px solid var(--oxblood);color:var(--oxblood);
  padding:.6rem .9rem;font-weight:700;border-radius:3px;animation:holdin .45s ease}
@keyframes holdin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.stamp-demo,.seal-stamp{display:inline-block;font-family:"IBM Plex Mono",monospace;font-weight:600;color:var(--seal);
  border:2.5px solid var(--seal);border-radius:4px;padding:.25rem .7rem;letter-spacing:.12em;
  animation:stampin .5s cubic-bezier(.2,2.2,.4,1)}
@keyframes stampin{0%{opacity:0;transform:scale(1.7) rotate(-14deg)}100%{opacity:1;transform:scale(1) rotate(-3deg)}}
footer{border-top:3px double var(--line);padding:1.4rem 1.2rem;max-width:1060px;margin:0 auto;color:var(--muted);font-size:.9rem}
@media (max-width:640px){ h1{font-size:1.7rem} .topbar nav a{margin-left:.6rem} table.docket{font-size:.84rem} }
