
.tc-t tr.tc-row{cursor:pointer}
.tc-t tr.tc-row:hover td{background:var(--n-25)}
.tc-t tr.tc-row:focus-visible{outline:2px solid var(--navy);outline-offset:-2px}

.tpn-scrim{position:fixed;inset:0;z-index:80;background:var(--edge-fade)}
.tpn{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(440px,100%);display:flex;flex-direction:column;
  background:var(--card);color:var(--ink);box-shadow:var(--sh-modal);
  padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-right:env(safe-area-inset-right,0px)}

.tpn-hd{display:flex;gap:var(--s-3);align-items:center;padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line)}
.tpn-hd .tc-av{width:42px;height:42px;font-size:var(--fs-body)}
.tpn-who{display:grid;gap:var(--s-1);justify-items:start;min-width:0}
.tpn-who h2{margin:0;font-family:var(--display);font-size:var(--fs-title);font-weight:var(--fw-semi);color:var(--navy);overflow-wrap:anywhere}
.tpn-x{margin-left:auto;flex:none;width:40px;height:40px;padding:0;font-size:var(--fs-body)}

.tpn-b{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:var(--s-4) var(--s-5) var(--s-5);display:grid;gap:var(--s-5);align-content:start}
.tpn-s h3{margin:0 0 var(--s-2);font-family:var(--display);font-size:var(--fs-label);font-weight:var(--fw-semi);
  letter-spacing:var(--tr-label);text-transform:uppercase;color:var(--faint)}

.tpn-kv{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:var(--s-2) var(--s-3);align-items:center;font-size:var(--fs-body)}
.tpn-kv>span{color:var(--faint);font-size:var(--fs-meta)}
.tpn-v{display:grid;gap:2px;justify-items:start;min-width:0}
.tpn-v b{font-family:var(--display);font-weight:var(--fw-semi);color:var(--navy);overflow-wrap:anywhere}
.tpn-v small{font-size:var(--fs-meta);color:var(--mut)}

.tpn-l{background:none;border:0;padding:var(--s-1) 0;min-height:32px;color:var(--brand-solid);
  font-family:var(--display);font-size:var(--fs-meta);font-weight:var(--fw-semi);text-align:left;cursor:pointer}
.tpn-l:hover{background:none;border:0;color:var(--brand-solid-h);text-decoration:underline}
.tpn-l:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.tpn-l:disabled{color:var(--faint);cursor:default;text-decoration:none}
.tpn-more{margin-top:var(--s-2)}

.tpn-days{display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--s-1) var(--s-3);font-size:var(--fs-body)}
.tpn-days span{font-family:var(--display);font-size:var(--fs-meta);font-weight:var(--fw-semi);color:var(--faint)}
.tpn-days em{font-style:normal;color:var(--ink)}
.tpn-days em.offd{color:var(--faint)}
.tpn-days em.cvd{color:var(--status-new-txt);font-weight:var(--fw-semi)}
.tpn-gap{margin:0;color:var(--brand-solid);font-family:var(--display);font-weight:var(--fw-semi)}

.tpn-hold{display:block;height:20px;border-radius:var(--r-sm);background:var(--n-25)}
.tpn-holdl{height:40px}

.tpn-f{display:grid;gap:var(--s-2);margin-bottom:var(--s-3);padding:var(--s-3);border-radius:var(--r-sm);background:var(--n-50)}
.tpn-f label{display:block;margin-bottom:2px;font-family:var(--display);font-size:var(--fs-meta);font-weight:var(--fw-semi);color:var(--mut)}
.tpn-f input{width:100%}
.tpn-acts{display:flex;gap:var(--s-2);flex-wrap:wrap}
.tpn-err{color:var(--status-alert-txt);font-size:var(--fs-meta)}
.tpn-err:empty{display:none}

.tpn-leaver{display:grid;gap:var(--s-3);padding:var(--s-3);border:1px solid var(--line);border-radius:var(--r-sm)}
.tpn-leaver h3{margin:0}
.tpn-leaver p{margin:0;font-size:var(--fs-meta);color:var(--mut)}

@media (max-width:640px){
  .tpn-hd{padding:var(--s-3) var(--s-4)}
  .tpn-b{padding:var(--s-3) var(--s-4) var(--s-5)}
  .tpn-kv{grid-template-columns:90px minmax(0,1fr) auto}
  .tpn-f input{font-size:var(--fs-input)}
}
@media (pointer:coarse){
  .tpn-x{width:44px;height:44px}
  .tpn-l,.tpn-acts button{min-height:44px}
  .tpn-f input{font-size:var(--fs-input);min-height:44px}
  .tpn-kv>span,.tpn-v small,.tpn-days span,.tpn-leaver p,.tpn-s h3{font-size:12px}
}
