/* Course lists (Book Direct, Private): rows open the course sheet; extra columns on wide screens. Course names and rank tags. */
.rank{font-size:11px;font-weight:600;color:var(--muted);background:var(--fill);border-radius:5px;padding:1px 5px;margin-right:6px;vertical-align:1px}
.course .n button{border:0;background:none;padding:0;font:inherit;font-weight:600;text-align:left;color:var(--ink);text-decoration:none}
.course .n button:hover{color:var(--accent)}
.phone{font-size:14px;user-select:all;white-space:nowrap}
.hint{font-size:12px;color:var(--muted)}
.lrow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 16px;min-height:56px;position:relative}
.lrow + .lrow::before{content:"";position:absolute;top:0;left:16px;right:0;border-top:.5px solid var(--line)}
.lmain{border:0;background:none;padding:0;text-align:left;color:inherit;display:flex;flex-direction:column;min-width:0}
.lmain::after{content:"";position:absolute;inset:0}
.lmain .nm{font-weight:600;font-size:16px;line-height:1.3}
.lmain .sub{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc{display:none;font-size:14px}
.lc.today{display:block}
.lc a{position:relative;z-index:1}
.lhead{display:none}
@media (hover:hover){.lrow:not(.lhead):hover{background:var(--fill)}}
@media (min-width:900px){
  .lrow{grid-template-columns:var(--cols)}
  .lc{display:block}
  .lhead{display:grid;min-height:0;padding-top:9px;padding-bottom:9px;background:var(--sunk);font-size:12px;font-weight:600;color:var(--muted)}
  .lhead + .lrow::before{display:none}
}
