/* Admin + Finance (admin.css is loaded for everyone but only styles admin-only pages). Tokens only. */
.adm-person{border-top:1px solid var(--line)}
.adm-person:first-of-type{border-top:0}
.adm-person.off .t{color:var(--ink2)}
.adm-head{width:100%;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;text-align:left;background:none;border:0;padding:12px 0;cursor:pointer}
.adm-head .t{font-weight:500;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.adm-head .m,.adm-seen{color:var(--ink2);font-size:13px}
.adm-seen{text-align:right;max-width:40vw}
.adm-person.on{background:var(--paper);margin:0 -16px;padding:0 16px 14px;border-radius:var(--r3)}
.adm-edit{padding-top:4px}
.adm-edit .m,.adm-add .m,.adm-codes .m,.card .m{color:var(--ink2);font-size:13px;margin:6px 0 0}
.adm-grid{display:grid;gap:10px}
.adm-grants{display:grid;gap:8px}
.adm-g{display:grid;grid-template-columns:1fr 130px;gap:10px;align-items:center;font-size:14px}
.adm-check{display:flex;gap:8px;align-items:center;font-size:14px}
.adm-codes{border-top:1px solid var(--line);padding-top:10px;margin-top:4px}
.adm-codes .lbl{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);font-weight:600;margin-bottom:6px}
.adm-c{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:6px 0;font-size:13px;border-top:1px solid var(--line)}
.adm-c:first-of-type{border-top:0}
.adm-c.dead{color:var(--ink2)}
.adm-add{border-top:1px solid var(--line);padding-top:12px;margin-top:4px}
.adm-add summary{cursor:pointer;font-weight:500;margin-bottom:10px}
.adm-code{border-color:var(--accent)}
.adm-code-v{font-size:22px;letter-spacing:.04em;background:var(--cream);border-radius:var(--r3);padding:12px 14px;user-select:all;word-break:break-all}
.adm-lane{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.adm-lane:first-of-type{border-top:0}
.adm-lane>div{grid-column:1/-1}
.adm-lane .t{font-weight:500}
.adm-lane .m{margin:0}
.adm-usd{display:flex;align-items:center;gap:6px;font-family:var(--mono)}
.adm-usd input{font-family:var(--mono)}
.adm-lane button{grid-column:1/-1;justify-self:start}
@media (min-width:900px){
  .adm-grid{grid-template-columns:repeat(3,1fr)}
  .adm-grants{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .adm-lane{grid-template-columns:1fr 140px 120px auto}
  .adm-lane>div{grid-column:auto}
  .adm-lane button{grid-column:auto}
  .adm-person.on{margin:0 -12px;padding:0 12px 14px}
}

/* Finance */
.fin-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fin-tile{background:var(--white);border:1px solid var(--line);border-radius:var(--r2);padding:12px 14px;box-shadow:var(--shadow)}
.fin-tile .n{font-family:var(--mono);font-size:20px;font-weight:500;letter-spacing:-.02em}
.fin-tile .l{font-size:13px;color:var(--ink2)}
.fin-t{width:100%;border-collapse:collapse;font-size:14px}
.fin-t th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2);font-weight:600;padding:6px 8px 6px 0;border-bottom:1px solid var(--line)}
.fin-t td{padding:9px 8px 9px 0;border-bottom:1px solid var(--line);vertical-align:top}
.fin-t tr:last-child td{border-bottom:0}
.fin-t .r{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.fin-t th.r{font-family:var(--ui)}
.fin-scroll{overflow-x:auto;margin:0 -16px;padding:0 16px}
.fin-bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden;margin-top:4px;min-width:60px}
.fin-bar i{display:block;height:100%;background:var(--ink)}
.fin-bar i.over{background:var(--accent)}
.fin-mix{display:grid;gap:10px}
.fin-mix .row2{display:grid;grid-template-columns:90px 1fr auto;gap:10px;align-items:center;font-size:14px}
.fin-note{color:var(--ink2);font-size:13px;margin:10px 0 0}
.fin-hide{display:none}
@media (min-width:900px){
  .fin-tiles{grid-template-columns:repeat(4,1fr)}
  .fin-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
  .fin-hide{display:table-cell}
}
@media (max-width:899px){ .fin-two{display:grid;gap:16px} }
