/* Shheletar — The Record (Violations) page styles. Tokens from ds/styles.css. */

.rec-stage{ background:var(--paper-deep); min-height:100vh; }

/* ---- Toolbar (screen only) ---- */
.rec-toolbar{ position:sticky; top:0; z-index:15; display:flex; align-items:center; justify-content:space-between; gap:var(--s-5);
  padding:var(--s-3) var(--s-6); background:var(--green-deep); color:var(--green-line); flex-wrap:wrap; }
.rec-toolbar__l{ display:flex; align-items:center; gap:var(--s-5); }
.rec-toolbar__lbl{ display:flex; align-items:center; gap:var(--s-2); font-family:var(--font-mono); font-size:var(--t-caption); letter-spacing:.06em; color:var(--paper); white-space:nowrap; }
.rec-toolbar__back{ display:inline-flex; align-items:center; gap:.4em; font-family:var(--font-serif); font-size:var(--t-small); color:var(--green-line); text-decoration:none; white-space:nowrap; }
.rec-toolbar__back:hover{ color:var(--paper); }
.rec-filters{ display:flex; gap:var(--s-2); }
.rec-fbtn{ font-family:var(--font-mono); font-size:var(--t-caption); letter-spacing:.02em; padding:.35em .8em;
  border-radius:var(--r-sm); border:var(--bw-hair) solid color-mix(in srgb,var(--green-line) 38%,transparent);
  background:transparent; color:var(--green-line); cursor:pointer; transition:all var(--dur-fast) var(--ease-out); }
.rec-fbtn:hover{ color:var(--paper); border-color:var(--green-line); }
.rec-fbtn.is-on{ background:var(--paper); color:var(--green-deep); border-color:var(--paper); font-weight:var(--w-semibold); }
.rec-toolbar__r{ display:flex; align-items:center; gap:var(--s-3); }

/* ---- Desk + document sheet ---- */
.rec-desk{ display:flex; justify-content:center; padding:var(--s-8) var(--s-5) var(--s-9); }
.rec-doc{ width:var(--doc-max); max-width:100%; background:var(--paper-panel); color:var(--ink);
  box-shadow:var(--shadow-lg); padding:var(--s-8) var(--s-8) var(--s-7); border-top:5px solid var(--green); position:relative; }

/* ---- Letterhead ---- */
.rec-head{ position:relative; display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s-5);
  padding-bottom:var(--s-4); border-bottom:var(--bw-rule) solid var(--ink); }
.rec-head__brand{ display:flex; align-items:center; gap:var(--s-3); flex:none; }
.rec-head__word{ display:flex; flex-direction:column; gap:2px; }
.rec-head__name{ font-family:var(--font-display); font-weight:var(--w-bold); font-size:1.7rem; letter-spacing:-.02em; color:var(--green); line-height:1; }
.rec-head__name b{ color:var(--stamp); }
.rec-head__sub{ font-family:var(--font-mono); font-size:10px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-faint); white-space:nowrap; }
.rec-head__meta{ display:flex; flex-direction:column; align-items:flex-end; gap:3px; font-family:var(--font-mono); font-size:var(--t-caption); color:var(--ink-soft); }
.rec-head__meta span{ white-space:nowrap; }
.rec-head__meta b{ color:var(--ink); }
.rec-head__stamp{ position:absolute; right:var(--s-5); top:104px; transform:rotate(-9deg); opacity:.92; pointer-events:none; }

/* ---- Title + statement ---- */
.rec-title{ margin:var(--s-6) 0 var(--s-5); }
.rec-title h1{ font-family:var(--font-display); font-weight:var(--w-bold); font-size:1.95rem; line-height:1.12; letter-spacing:-.02em; margin:var(--s-3) 0 0; max-width:26ch; color:var(--ink); }
.rec-statement{ font-family:var(--font-serif); font-size:var(--t-body); line-height:1.6; color:var(--ink-soft); margin:var(--s-5) 0; max-width:74ch; }
.rec-statement b{ color:var(--ink); }
.rec-caveat{ display:flex; gap:var(--s-3); padding:var(--s-4); background:var(--amber-tint); border:var(--bw-hair) solid color-mix(in srgb,var(--amber-deep) 30%,transparent);
  border-left:var(--bw-strong) solid var(--amber); border-radius:var(--r-sm); margin:var(--s-5) 0; }
.rec-caveat svg{ color:var(--amber-deep); flex:none; margin-top:1px; }
.rec-caveat p{ margin:0; font-family:var(--font-serif); font-size:var(--t-small); color:var(--ink-soft); line-height:1.55; }
.rec-caveat b{ color:var(--ink); }

/* ---- Summary stats ---- */
.rec-stats{ display:grid; grid-template-columns:repeat(5,1fr); gap:var(--s-5);
  padding:var(--s-5) 0; border-top:var(--bw-hair) solid var(--rule); border-bottom:var(--bw-hair) solid var(--rule); margin-bottom:var(--s-6); }
.rec-stats > *{ padding-left:var(--s-4); border-left:var(--bw-rule) solid var(--paper-edge-2); }
.rec-stats > *:first-child{ padding-left:0; border-left:0; }

/* ---- Ledger ---- */
.rec-ledger__cap{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:var(--s-3); }
.rec-ledger__cap h2{ font-family:var(--font-display); font-size:var(--t-h3); margin:0; color:var(--ink); }
.rec-ledger__cap span{ font-family:var(--font-mono); font-size:var(--t-caption); color:var(--ink-faint); }
.rec-table-wrap{ width:100%; }
.rec-table{ width:100%; border-collapse:collapse; font-family:var(--font-mono); font-size:12px; font-variant-numeric:tabular-nums; }
.rec-table thead th{ text-align:left; font-weight:var(--w-semibold); font-size:9px; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ink-faint); padding:0 var(--s-2) var(--s-2); border-bottom:var(--bw-rule) solid var(--ink); white-space:nowrap; }
.rec-table td{ padding:var(--s-3) var(--s-2); border-bottom:var(--bw-hair) solid var(--rule); color:var(--ink-soft); vertical-align:middle; }
.rec-table tbody tr:nth-child(even){ background:var(--paper-deep); }
.rec-table tbody tr[data-href]{ cursor:pointer; }
.rec-table tbody tr[data-href]:hover{ background:var(--paper-panel); }
.rec-table .num{ text-align:right; }
.rec-table .c-time{ font-weight:var(--w-bold); font-size:14px; color:var(--stamp); }
.rec-table .c-tail b{ color:var(--ink); font-weight:var(--w-bold); letter-spacing:.03em; }
.rec-table .c-tail span{ display:block; font-family:var(--font-serif); font-size:11px; color:var(--ink-faint); }
.rec-table .c-from b{ color:var(--ink); }
.rec-table .c-from span{ display:block; font-family:var(--font-serif); font-size:11px; color:var(--ink-faint); }
.rec-table .c-move{ font-size:9px; letter-spacing:.08em; text-transform:uppercase; }
.rec-table .c-move b{ color:var(--green-bright); }
.rec-table .c-past{ color:var(--stamp); font-weight:var(--w-semibold); }
.rec-table .c-ref{ color:var(--ink-faint); font-size:10px; }
.rec-table .c-exempt{ font-family:var(--font-serif); font-size:10px; color:var(--amber-deep); font-style:italic; }
.rec-table .c-prov{ font-family:var(--font-serif); font-size:10px; color:var(--stamp); font-style:italic; }
.rec-table .c-view{ width:30px; text-align:center; }
.rec-table .c-view a{ display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:var(--r-sm);
  color:var(--ink-faint); border:var(--bw-hair) solid transparent; transition:all var(--dur-fast) var(--ease-out); }
.rec-table .c-view a:hover{ color:var(--green-deep); border-color:var(--border-strong); background:var(--paper-panel); }

/* ---- Offenders block ---- */
.rec-off{ margin:var(--s-7) 0 0; }
.rec-off__cap{ font-family:var(--font-display); font-size:var(--t-h3); margin:0 0 var(--s-3); color:var(--ink); }
.rec-off__list{ border-top:var(--bw-rule) solid var(--border-strong); }

/* ---- Certification ---- */
.rec-cert{ display:grid; grid-template-columns:1.6fr 1fr; gap:var(--s-7); margin-top:var(--s-7); padding-top:var(--s-5); border-top:var(--bw-rule) solid var(--ink); }
.rec-cert__text p{ font-family:var(--font-serif); font-size:var(--t-caption); line-height:1.55; color:var(--ink-soft); margin:var(--s-2) 0; }
.rec-cert__id{ font-family:var(--font-mono); font-size:10px; color:var(--ink-faint); letter-spacing:.02em; }
.rec-cert__sign{ display:flex; flex-direction:column; gap:var(--s-1); align-self:flex-end; }
.rec-sign__line{ height:32px; border-bottom:var(--bw-rule) solid var(--ink-soft); }
.rec-cert__sign span{ font-family:var(--font-mono); font-size:var(--t-caption); color:var(--ink-soft); }

@media(max-width:760px){
  .rec-stats{ grid-template-columns:repeat(2,1fr); }
  .rec-cert{ grid-template-columns:1fr; }
  .rec-table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; border:var(--bw-hair) solid var(--border); border-radius:var(--r-sm); }
  .rec-table{ min-width:600px; }
  .rec-desk{ padding:var(--s-6) var(--s-3) var(--s-8); }
  .rec-doc{ padding:var(--s-6) var(--s-4); }
  .rec-head{ flex-direction:column; gap:var(--s-4); }
  .rec-head__meta{ align-items:flex-start; }
  .rec-head__stamp{ right:var(--s-3); top:auto; bottom:var(--s-5); }
  .rec-title h1{ font-size:1.5rem; }
  .rec-title .shh-eyebrow{ white-space:normal; }
  .rec-toolbar{ padding:var(--s-3) var(--s-4); }
  .rec-toolbar__l{ gap:var(--s-3); }
  .rec-filters{ flex-wrap:wrap; }
  /* Touch targets */
  .rec-fbtn{ min-height:40px; padding:.6em 1em; }
  .rec-pager__num,.rec-pager__step{ min-height:40px; display:inline-flex; align-items:center; }
  .rec-pager__num{ padding:.4em .8em; }
  .rec-table .c-view a{ width:28px; height:28px; padding:0 8px; box-sizing:content-box; }
}

@media(max-width:560px){
  /* Hide lowest-value column (Aircraft type, 6th cell) and tighten scroll width */
  .rec-table thead th:nth-child(6), .rec-table tbody td:nth-child(6){ display:none; }
  .rec-table{ min-width:480px; }
}

/* ---- Print ---- */
@media print{
  @page{ size:A4; margin:13mm; }
  .rec-stage,.rec-desk{ background:#fff; padding:0; }
  .mk-nav,.rec-toolbar,.mk-footer{ display:none !important; }
  .rec-doc{ box-shadow:none; width:100%; padding:0; border-top:4px solid var(--green); padding-top:var(--s-4); }
  .rec-table .c-view, .rec-table thead .h-view{ display:none; }
  .rec-table-wrap{ overflow:visible; }
  .rec-table{ font-size:10px; min-width:0; }
  .rec-table td{ padding:var(--s-2) var(--s-1); }
  .rec-table tbody tr{ break-inside:avoid; }
  .rec-cert,.rec-off{ break-inside:avoid; }
}

/* ---- Ledger pager (screen only) ---- */
.rec-pager{ display:flex; align-items:center; justify-content:center; gap:var(--s-4); margin:var(--s-6) 0 var(--s-3); flex-wrap:wrap; }
.rec-pager__step{ display:inline-flex; align-items:center; gap:.35em; font-family:var(--font-serif); font-size:var(--t-small); color:var(--green-deep); text-decoration:none; }
.rec-pager__step.is-off{ color:var(--ink-ghost); cursor:default; }
.rec-pager__nums{ display:flex; align-items:center; gap:var(--s-2); }
.rec-pager__num{ font-family:var(--font-mono); font-size:var(--t-caption); color:var(--ink-soft); text-decoration:none; padding:.3em .6em; border-radius:var(--r-sm); border:var(--bw-hair) solid transparent; }
.rec-pager__num:hover{ border-color:var(--border-strong); color:var(--green-deep); }
.rec-pager__num.is-on{ background:var(--green); color:var(--text-on-green); border-color:var(--green); }
.rec-pager__gap{ color:var(--ink-faint); font-family:var(--font-mono); }
.rec-pager__note{ text-align:center; font-family:var(--font-mono); font-size:var(--t-caption); color:var(--ink-faint); margin:0 0 var(--s-5); }
