/* Player portal UI pass (rev212, owner 2026-10-06). Linked after racing-app.css on portal.html only.
   Up next card, one timeline (tabs + grouped by event), calmer type: racing display for headings and big
   numbers only; names, list rows and small print plain. Light dashed rows. Phone layout. No colour that
   carries meaning is changed. */

/* ---------- Up next ---------- */
#upnext{margin:18px 0 22px;}
.upnext{background:var(--pine-950,#0E2018);color:#fff;padding:18px 22px 20px;position:relative;
  background-image:repeating-linear-gradient(-60deg,var(--lime-500,#B4EA32) 0 10px,transparent 10px 20px)!important;
  background-size:100% 4px!important;background-position:left bottom!important;background-repeat:no-repeat!important;}
.un-h{font-family:var(--rc-race,'Archivo',sans-serif);font-style:italic;font-stretch:116%;font-weight:900;font-size:15px;text-transform:uppercase;letter-spacing:.02em;color:var(--lime-500,#B4EA32);margin-bottom:12px;}
.un-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px 22px;align-items:start;}
.un-main{display:flex;flex-direction:column;gap:4px;min-width:0;}
.un-k{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:#C5F2D7;}
.un-t{font-family:var(--sans);font-weight:700;font-size:20px;line-height:1.25;color:#fff;text-wrap:pretty;}
.un-c{font-size:13.5px;color:#C5F2D7;}
.un-main .btn{align-self:flex-start;margin-top:10px;background:var(--lime-500,#B4EA32)!important;color:var(--pine-950,#0E2018)!important;border-color:var(--lime-500,#B4EA32)!important;}
.un-side{display:flex;flex-direction:column;gap:8px;}
.un-item{display:flex;flex-direction:column;gap:2px;text-align:left;width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);padding:10px 13px;color:#fff;text-decoration:none;cursor:default;}
a.un-item,button.un-item{cursor:pointer;transition:border-color .15s,background .15s;}
a.un-item:hover,button.un-item:hover{border-color:var(--lime-500,#B4EA32);background:rgba(255,255,255,.1);}
.un-item.act{border-color:var(--lime-500,#B4EA32);}
.un-item b{font-family:var(--sans);font-weight:700;font-size:14px;}
.un-item span{font-size:12.5px;color:#C5F2D7;}
#v-portal button.un-item{transform:none!important;font-family:var(--sans)!important;text-transform:none!important;letter-spacing:0!important;font-style:normal!important;}

/* ---------- Timeline tabs ---------- */
#ptl{margin-top:26px;}
.ptabs{display:flex;gap:6px;margin:0 0 16px;overflow-x:auto;scrollbar-width:none;padding:2px 2px 6px;border-bottom:1px dashed rgba(16,25,20,.18);}
.ptabs::-webkit-scrollbar{display:none;}
.ptabs button{flex:0 0 auto;min-height:40px;padding:0 16px;background:transparent;border:1px solid var(--border);color:var(--ink-700);font-size:12px!important;cursor:pointer;}
.ptabs button.on{background:var(--pine-950,#0E2018);border-color:var(--pine-950,#0E2018);color:#fff;}
#ptl[data-f="reports"] #sentplans,#ptl[data-f="reports"] #planlibrary,#ptl[data-f="reports"] #coaching-links,
#ptl[data-f="plans"] #reports,#ptl[data-f="plans"] #coaching-links,
#ptl[data-f="lessons"] #sentplans,#ptl[data-f="lessons"] #planlibrary{display:none!important;}

#ptl-empty{display:none;padding:28px 4px;font-size:14px;color:var(--ink-700);}
#ptl-empty a{color:var(--fairway-700);font-weight:700;}
#ptl[data-f="plans"][data-noplans="1"] #ptl-empty{display:block;}

/* Grouped by event */
.revt{margin-bottom:22px;}
.revt-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:0 2px 8px;margin-bottom:12px;border-bottom:1px dashed rgba(16,25,20,.2);}
.revt-h > span:first-child{font-family:var(--rc-race,'Archivo',sans-serif);font-style:italic;font-stretch:112%;font-weight:900;font-size:16px;color:var(--ink-900);text-transform:uppercase;letter-spacing:.01em;}
.revt-n{font-family:var(--mono);font-size:11.5px;color:var(--ink-500);white-space:nowrap;}

/* ---------- Calmer type: report cards + plan rows read in plain sans ---------- */
#v-portal .rcard h3{font-family:var(--sans)!important;font-style:normal!important;font-stretch:100%!important;font-weight:700!important;font-size:17px;letter-spacing:0!important;line-height:1.3;}
#v-portal .rcard .rk,#v-portal .tcoach .ta{font-size:11.5px;color:var(--ink-500);}
#v-portal .rcard .course{font-size:13.5px;color:var(--ink-700);}
#v-portal .rcard .acts .btn,#v-portal .tcoach .btn{padding:8px 13px!important;font-size:11px!important;min-height:36px;}
#v-portal .tlist{gap:0;}
#v-portal .tcoach{border:0!important;border-bottom:1px dashed rgba(16,25,20,.16)!important;padding:12px 2px!important;clip-path:none!important;background-image:none!important;}
#v-portal .tlist .tcoach:last-child{border-bottom:0!important;}
#v-portal .tcoach .tn{font-family:var(--sans);font-weight:700;font-size:14.5px;}
#v-portal .addcoach .desc{font-size:14px;color:var(--ink-700);}

/* ---------- Phones ---------- */
@media(max-width:720px){
  .un-body{grid-template-columns:minmax(0,1fr);}
  .upnext{padding:16px 16px 18px;}
  .un-t{font-size:18px;}
  .un-main .btn{align-self:stretch;justify-content:center;}
  #v-portal .rcard{padding:18px!important;}
  #v-portal .rcard .acts{display:flex;flex-wrap:wrap;gap:8px;}
  #v-portal .tcoach{flex-direction:column;align-items:stretch!important;gap:10px;}
  #v-portal .tcoach > div:last-child{justify-content:flex-start!important;}
  #v-portal [data-tray-row]{overflow-x:auto;flex-wrap:nowrap!important;padding-bottom:6px;scrollbar-width:none;}
  #v-portal [data-tray-row] > *{flex:0 0 auto;}
  #v-portal .phead{flex-wrap:wrap;gap:8px;}
}
