
  :root{
    --ink:#131312; --card:#1a1a18; --card2:#1f1f1d; --line:#2a2a27; --line2:#383834;
    --txt:#ecebe5; --dim:#8e8c84; --dim2:#6d6b64;
    --hot:#ff6a2c; --time:#7cd4ff; --gold:#f5c451; --silver:#cfcdc4; --bronze:#d08b56; --pen:#ff5a4f;
    --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--ink);color:var(--txt);padding:20px 22px 60px;max-width:1120px;
       font:14px/1.5 ui-sans-serif,-apple-system,"Segoe UI",Roboto,sans-serif}
  a{color:inherit}
  .mono{font-family:var(--mono)}
  .dim{color:var(--dim)}
  .lbl{font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:.05em}

  header{display:flex;flex-wrap:wrap;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding-bottom:14px}
  .mark{font-family:var(--mono);font-size:26px;letter-spacing:-.5px;white-space:nowrap;
        text-decoration:none;cursor:pointer;display:inline-block}
  .mark:hover i{color:var(--txt)}
  .mark i{color:var(--hot);font-style:normal}
  .mark small{display:block;font-size:9.5px;letter-spacing:.22em;color:var(--dim2);margin-top:-4px}
  .find{position:relative;flex:1;min-width:180px}
  input,select,button{font:inherit;color:var(--txt);background:var(--card2);border:1px solid var(--line2);
                      border-radius:6px;padding:8px 11px}
  input{width:100%;font-size:15px}
  button{cursor:pointer}
  button:hover{border-color:var(--hot)}
  .go{background:var(--hot);border-color:var(--hot);color:#2a1000;font-weight:500;padding:8px 18px}
  .go:disabled{opacity:.45;cursor:default}
  .ghost{background:none}
  /* Section tabs. They used to sit small and grey at the end of the header row, where
     they read as a setting rather than as the site's navigation. Now they take a row of
     their own across the full width, sitting on the header's own bottom rule. */
  .tabs{display:flex;gap:4px;flex:1 0 100%;order:9;align-items:flex-end;
        margin:12px 0 -15px;border-top:1px solid var(--line);padding-top:10px}
  .tab{font-family:var(--mono);font-size:15px;letter-spacing:.02em;color:#a8a69d;background:none;border:0;
       border-bottom:3px solid transparent;padding:9px 16px 12px;cursor:pointer;white-space:nowrap;
       border-radius:6px 6px 0 0;transition:color .12s,background .12s}
  .tab:hover{color:var(--txt);background:#1c1c19}
  .tab.on{color:var(--txt);border-bottom-color:var(--hot);font-weight:500}
  a.tab{text-decoration:none;display:inline-block;line-height:1.2}
  a.tab.guide{color:var(--hot)}
  a.tab.guide:hover{background:#251409}
  @media(max-width:560px){ .tab{font-size:13.5px;padding:8px 11px 10px} .tabs{gap:2px} }
  #sug{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--card);border:1px solid var(--line2);
       border-radius:8px;max-height:340px;overflow:auto;z-index:20;display:none}
  #sug div{padding:7px 11px;cursor:pointer;font-size:13.5px;display:flex;gap:8px;align-items:baseline}
  #sug div.head{font-family:var(--mono);font-size:10.5px;color:var(--dim2);letter-spacing:.04em;
                cursor:default;border-bottom:1px solid var(--line);padding:6px 11px}
  #sug b{font-weight:500;color:var(--hot)}
  #sug div.on,#sug div:hover{background:var(--card2)}
  #sug .nat{font-family:var(--mono);font-size:11px;color:var(--time)}
  #sug .n{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--dim2)}

  .bar{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:11px 14px;margin:14px 0;font-size:13px}
  .prog{height:5px;background:#26262300;border:1px solid var(--line);border-radius:3px;overflow:hidden;margin-top:8px}
  .prog i{display:block;height:100%;background:var(--hot);width:0}
  .rink{display:inline-block;vertical-align:-20px;margin-right:14px}
  .rink .lane{fill:none;stroke:var(--line2);stroke-width:2.6}
  .rink .dot{fill:var(--hot)}
  .rink:not(.spin) .dot{fill:var(--dim2)}
  .rink .finish{stroke:var(--line2);stroke-width:2;stroke-dasharray:2 2}
  @media (prefers-reduced-motion:reduce){ .rink .dot{animation:none} }

  .card{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-top:16px}
  .card .who{display:flex;gap:16px;padding:15px 16px;border-bottom:1px solid var(--line);align-items:flex-start}
  .card .who h2{margin:4px 0 0;font-size:25px;font-weight:400;line-height:1.08}
  .medals{display:flex;gap:8px}
  .medal{text-align:center;border-radius:8px;padding:5px 11px;border:1px solid var(--line2);background:var(--card2)}
  .medal b{display:block;font-family:var(--mono);font-size:20px;font-weight:400}
  .medal span{font-family:var(--mono);font-size:10px;color:var(--dim)}
  .medal.g{background:#241d05;border-color:#6b5410}.medal.g b{color:var(--gold)}.medal.g span{color:#b99b3c}
  .medal.s b{color:var(--silver)}
  .medal.b{background:#251a11;border-color:#6b4a2a}.medal.b b{color:var(--bronze)}
  .badges{display:flex;flex-wrap:wrap;gap:6px;padding:11px 16px;border-bottom:1px solid var(--line)}
  .badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;white-space:nowrap;
         border:1px solid var(--line2);background:var(--card2);color:#cfcdc4}
  .badgesw{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;
           color:var(--dim);cursor:pointer;user-select:none}
  .badgesw input{accent-color:var(--hot);width:14px;height:14px;cursor:pointer}
  .badges.b-off{padding-top:8px;padding-bottom:10px}
  .badge i{font-style:normal;font-family:var(--mono);opacity:.75;margin-left:3px}
  .badge i::before{content:'×';opacity:.6;margin-right:1px}
  .badge.bg{background:#241d05;border-color:#6b5410;color:var(--gold)}
  .badge.bs{background:#25251f;border-color:#4a4a45;color:#dcd9cf}
  .badge.bf{background:none;border-color:var(--line2);color:var(--dim)}
  .badge.bd{background:#10202a;border-color:#2b5468;color:var(--time)}
  .badge.bm{background:#1b2417;border-color:#3f5a33;color:#a9d18b}
  .badge.bw{background:#2a1020;border-color:#7a2f52;color:#ff8fc0}
  .badge svg{flex:0 0 auto;opacity:.95;width:1.9em;height:1.9em}
  .b-md .badge svg{width:1.85em;height:1.85em}
  .b-sm .badge svg{width:1.8em;height:1.8em}
  .b-lg .badge{font-size:22px;padding:8px 18px;gap:8px}
  .b-md .badge{font-size:19px;padding:7px 15px;gap:7px}
  .b-sm .badge{font-size:16px;padding:6px 13px;gap:6px}
  .badges{gap:10px;padding:15px 16px}
  .titles{padding:9px 16px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11.5px;
          color:#a8a69d;display:flex;flex-wrap:wrap;gap:6px 16px}
  .cols{display:grid;grid-template-columns:1.15fr 1fr}
  .cols>div{padding:13px 16px}
  .cols>div:first-child{border-right:1px solid var(--line)}
  .card .pb{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;gap:10px}
  .card .pb b{font-family:var(--mono);font-size:17px;font-weight:400;color:var(--time)}
  .card .pb a{text-decoration:none;border-bottom:1px dotted #3a5a6b}
  .tot{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px}
  .tot b{display:block;font-family:var(--mono);font-size:18px;font-weight:400}
  .recent{padding:9px 16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
  .mini{display:inline-flex;align-items:center;gap:7px;font-size:12.5px}
  .mini .mono{font-size:12px}
  .rank{font-family:var(--mono);font-size:11.5px;border-radius:4px;padding:2px 8px;background:var(--card2);color:#d7d5cd}
  .rank.g{background:#241d05;color:var(--gold)}.rank.s{background:#2b2b28;color:var(--silver)}
  .rank.b{background:#251a11;color:var(--bronze)}.rank.p{background:#301715;color:#ff8a7f}

  .tools{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:18px 0 6px}
  .chip{font-family:var(--mono);font-size:11.5px;border:1px solid var(--line2);border-radius:5px;
        padding:5px 9px;background:none;color:var(--dim)}
  .chip.on{border-color:var(--hot);color:var(--txt)}
  .tools select{font-family:var(--mono);font-size:11.5px;padding:5px 8px}
  .seasons{display:inline-flex;gap:4px;flex-wrap:wrap;padding-right:6px;margin-right:2px;border-right:1px solid var(--line)}

  .votes{float:right;display:flex;gap:6px;margin:-2px 0 0 10px}
  .vbtn{background:transparent;border:1px solid var(--line2);color:var(--dim2);border-radius:999px;
        padding:2px 9px;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap;line-height:1.6}
  .vbtn:hover{border-color:var(--dim);color:var(--txt)}
  .vbtn.on{border-color:var(--hot);color:var(--hot)}
  .vbtn .vn{margin-left:4px;color:inherit;opacity:.8}
  @media(max-width:560px){ .vbtn{padding:2px 7px;font-size:10.5px} }
  /* tooltips. every title= on the page is converted to data-tip and shown in this bubble
     instead of the browser's own — instant, readable, and it survives inside .statwrap,
     which clips its overflow and would cut a css-positioned bubble in half. */
  [data-tip]{cursor:help}
  a[data-tip],button[data-tip],label[data-tip],th[data-tip]{cursor:pointer}
  #tip{position:fixed;z-index:9999;max-width:min(300px,84vw);pointer-events:none;opacity:0;
       transform:translateY(3px);transition:opacity .09s ease,transform .09s ease;
       background:#12120f;border:1px solid var(--line2);border-radius:6px;padding:7px 10px;
       font-family:var(--mono);font-size:11.5px;line-height:1.5;color:#ddd9cf;
       box-shadow:0 6px 22px #000a;white-space:normal}
  #tip.on{opacity:1;transform:none}
  th.sortable{cursor:pointer;user-select:none;white-space:nowrap}
  th.sortable:hover{color:var(--txt)}
  th.sorted{color:var(--hot)}
  table{border-collapse:collapse;width:100%;margin-top:4px}
  thead th{font-family:var(--mono);font-size:11px;font-weight:400;color:var(--dim);text-align:left;
           padding:7px 8px;border-bottom:1px solid var(--line);cursor:pointer;white-space:nowrap}
  thead th.on{color:var(--txt);box-shadow:inset 0 -2px 0 var(--hot)}
  tbody td{padding:8px;border-bottom:1px solid #232320;font-size:13px;vertical-align:middle}
  tbody tr.pen td{background:#1e1512}
  tbody tr.best td{background:#101c22}
  thead th:nth-child(2),tbody td:nth-child(2){white-space:nowrap;width:1%}
  thead th:nth-child(1),tbody td:nth-child(1){white-space:nowrap;width:1%}
  thead th:nth-child(3),tbody td:nth-child(3){white-space:nowrap;width:1%}
  thead th:nth-child(4),tbody td:nth-child(4){width:auto}
  td.t{font-family:var(--mono);font-size:13px}
  td.t.best{color:var(--time)}
  .tag{font-family:var(--mono);font-size:11px;border-radius:3px;padding:2px 7px;background:#2f2f2c;color:#c9c7bf;white-space:nowrap}
  .tag.fa{background:#241d05;color:var(--gold)}
  .watch{background:#e0402f;color:#fff;border:0;border-radius:4px;padding:5px 10px;font-size:11.5px;font-family:var(--mono)}
  .watch.approx{background:#b9762a}
  .watch.rough{background:#4a4a45}
  .notape{font-family:var(--mono);font-size:11px;color:var(--dim2)}
  .st{font-family:var(--mono);font-size:11px;color:var(--dim)}
  .st.bad{color:var(--pen)}
  .st.era{border-bottom:1px dotted currentColor;cursor:help}

  #player{margin:14px 0;background:#000;border:1px solid var(--line2);border-radius:10px;overflow:hidden;display:none}
  #player .head{display:flex;gap:10px;align-items:center;padding:8px 12px;background:var(--card);font-size:13px}
  #player .head .lbl{flex:1}
  #frame{width:100%;aspect-ratio:16/9;border:0;display:block;background:#000}

  .home{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin-top:18px;align-items:start}
  .wall{columns:265px;column-gap:14px;margin-top:14px}
  .wall .panel{break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 14px;display:inline-block;width:100%}
  .rowline{display:flex;gap:10px;align-items:baseline;font-size:13px;padding:2px 0}
  .rowline .grow{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .meter{height:4px;background:var(--card2);border-radius:2px;overflow:hidden;flex:0 0 54px}
  .meter i{display:block;height:100%;background:var(--hot)}
  .panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
  .panel h3{margin:0 0 10px;font-family:var(--mono);font-size:11px;font-weight:400;color:var(--dim);letter-spacing:.05em}
  .panel ol{margin:0;padding-left:20px;font-size:13px}
  .panel li{padding:2px 0}
  .panel li span{font-family:var(--mono);font-size:11.5px;color:var(--dim)}
  .big{display:flex;gap:20px;flex-wrap:wrap}
  .big>*{display:block}
  .big b{display:block;font-family:var(--mono);font-size:26px;font-weight:400;color:var(--txt)}
  /* every tile is a link now. It must not look like body copy pretending to be a number,
     so the label underlines on hover and the figure warms up — the same affordance the
     rest of the app uses, no blue and no permanent underline shouting at five numbers. */
  .big a{color:inherit;text-decoration:none;cursor:pointer}
  .big a .lbl{border-bottom:1px dotted var(--dim2);padding-bottom:1px}
  .big a:hover b,.big a:focus-visible b{color:var(--hot)}
  .big a:hover .lbl,.big a:focus-visible .lbl{color:var(--txt);border-bottom-color:var(--hot)}
  .big a:focus-visible{outline:2px solid var(--hot);outline-offset:3px;border-radius:4px}
  .wall2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  @media (max-width:820px){ .wall2{grid-template-columns:1fr} }
  .bars{margin-top:2px}
  .barrow{display:flex;align-items:center;gap:8px;padding:2px 0;font-family:var(--mono);font-size:11px}
  .barrow .ylab{flex:0 0 34px;color:var(--dim2)}
  .barrow .bar{flex:1;height:7px;background:var(--card2);border-radius:4px;overflow:hidden}
  .barrow .bar i{display:block;height:100%;background:var(--time);opacity:.75}
  .barrow .tlab{flex:0 0 62px;text-align:right;color:var(--time)}
  .barrow .nlab{flex:0 0 28px;text-align:right;color:var(--dim2)}
  .mini-t{margin-top:2px}
  .mini-t thead th{cursor:default;padding:5px 7px;font-size:10.5px}
  .mini-t tbody td{padding:5px 7px;font-size:12px;white-space:nowrap;border-bottom:1px solid #232320}
  .mini-t thead th:first-child,.mini-t tbody td:first-child{width:auto;white-space:nowrap;text-align:left}
  .mini-t thead th:not(:first-child),.mini-t tbody td:not(:first-child){text-align:right;width:1%}
  .mini-t tbody tr.best td{background:#101c22}
  .warnq{color:var(--warn)}
  .sharerow{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);
            padding:9px 0 0;margin-top:11px;font-family:var(--mono);font-size:11.5px;color:var(--dim)}
  .sharerow .grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sharerow .chip.done{border-color:var(--hot);color:var(--txt)}
  .seeall,.seeall2{margin-top:9px}
  .seeall a,.seeall2 a{font-family:var(--mono);font-size:11px;color:var(--dim);border-bottom-style:solid}
  .seeall a:hover,.seeall2 a:hover{color:var(--hot)}
  .caveat{font-family:var(--mono);font-size:10.5px;color:var(--dim2);margin-top:8px;line-height:1.6}
  .cal{display:grid;gap:1px}
  .calrow{display:flex;gap:9px;align-items:baseline;font-size:12.5px;padding:2px 3px;border-radius:5px}
  .calrow .when{font-size:11px;color:var(--dim);flex:0 0 74px}
  .calrow .grow{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .calrow .state{font-size:10.5px;flex:0 0 auto}
  .calrow.past{opacity:.45}
  .calrow.now{background:#241d05;outline:1px solid #6b5410}
  .calrow.now .state{color:var(--gold)}
  .jr{font-family:var(--mono);font-size:10px;color:#a9d18b;border:1px solid #3f5a33;border-radius:3px;padding:0 4px;margin-left:4px}
  a.skl{color:inherit;text-decoration:none;border-bottom:1px dotted var(--line2);cursor:pointer}
  a.skl:hover{color:var(--hot);border-bottom-color:var(--hot)}
  .check{background:var(--card);border-top:1px solid var(--line);padding:9px 13px;font-size:13px;
         display:flex;flex-wrap:wrap;gap:8px;align-items:center}
  /* a race, opened out under its row */
  tr.rr{cursor:pointer}
  tr.rr:hover td{background:#1d1d1a}
  tr.rr.open td{background:#221f1c}
  tr.rr:focus-visible{outline:2px solid var(--time);outline-offset:-2px}
  tr.rx>td{padding:0 0 10px}
  .rxbox{background:#171715;border:1px solid #2a2a27;border-radius:3px;padding:10px 12px;margin:2px 0 0}
  .rxhead{font:11px ui-monospace,monospace;color:#8e8c84;margin-bottom:8px;letter-spacing:.04em}
  table.rxt{width:100%;border-collapse:collapse}
  table.rxt th{font:11px ui-monospace,monospace;font-weight:400;color:#8e8c84;text-align:left;padding:4px 8px;border-bottom:1px solid #2a2a27}
  table.rxt td{padding:4px 8px;border-bottom:1px solid #212120;vertical-align:top}
  table.rxt tr.mine td{background:#20201c}
  table.rxt tr:last-child td{border-bottom:0}
  .lp{display:inline-block;font:11px ui-monospace,monospace;color:#c9c7bf;background:#202020;
      border:1px solid #2c2c29;border-radius:2px;padding:1px 5px;margin:1px 3px 1px 0}
  .lp.op{color:#77756d;border-style:dashed}
  .lp.fast{color:var(--time);border-color:var(--time)}
  .check .q{color:var(--dim)}
  .check .chip{font-size:12px}
  .check input[type=text]{width:110px;padding:5px 8px;font-family:var(--mono);font-size:12px}
  .check .ok{color:var(--ok, #3fb950)}
  .geo{background:rgba(210,153,34,.10);border-top:1px solid #4a3a16;padding:9px 13px;
       font-family:var(--mono);font-size:12px;color:#cfc7b4;line-height:1.6}
  .geo b{color:var(--warn)}
  .geo a{color:var(--warn);text-decoration:none;border-bottom:1px solid #6b5410}

  @media (max-width:760px){
    body{padding:14px 14px 50px}
    header{flex-wrap:wrap;gap:8px 10px;padding-bottom:10px}
    .mark{font-size:20px;order:1}
    .mark small{font-size:8.5px;letter-spacing:.18em}
    .tabs{order:9;margin:10px 0 -15px}
    .find{flex:1 1 auto;order:3;min-width:0}
    .go{order:4;padding:8px 14px}
    #share{display:none}
    .cols{grid-template-columns:1fr}
    .cols>div:first-child{border-right:0;border-bottom:1px solid var(--line)}
    .card .who{flex-direction:column;gap:10px}
    .card .who h2{font-size:22px}
    /* one race = two tight lines, not seven stacked rows. Scoped to the race list:
       the stat tables (relay record, times, nation board) keep their columns and scroll
       sideways instead — run through this grid they came out as scattered numbers. */
    .racelist thead{display:none}
    .racelist tbody tr{display:grid;grid-template-columns:auto 1fr auto auto;
             grid-template-areas:"date comp comp dist" "round pos time act";
             gap:3px 8px;align-items:center;
             border:0;border-bottom:1px solid var(--line);border-radius:0;padding:9px 2px;margin:0;background:none}
    .racelist tbody tr.pen{background:#1e1512;border-bottom-color:#5c2b22}
    .racelist tbody tr.best{background:#101c22}
    .racelist tbody td{display:block;border:0;padding:0;width:auto!important;white-space:nowrap;
             overflow:hidden;text-overflow:ellipsis;font-size:12.5px}
    .racelist tbody td::before{content:none}
    .racelist tbody td:nth-child(1){grid-area:date;font-size:11px}
    .racelist tbody td:nth-child(2){grid-area:comp;font-family:var(--mono);font-size:11.5px;color:var(--dim)}
    .racelist tbody td:nth-child(3){grid-area:dist;text-align:right;font-size:12px}
    .racelist tbody td:nth-child(4){grid-area:round}
    .racelist tbody td:nth-child(5){grid-area:pos;font-size:13px;min-width:26px}
    .racelist tbody td:nth-child(6){grid-area:time;font-size:14px;text-align:right}
    .racelist tbody td:nth-child(7){grid-area:act;text-align:right}
    /* a row of chips swipes sideways instead of stacking eight deep */
    .tools{gap:7px}
    .tools .seasons{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;
                    max-width:100%;padding-bottom:2px;scrollbar-width:none}
    .tools .seasons::-webkit-scrollbar{display:none}
    .tools .seasons .chip{flex:0 0 auto}
    .tools select{flex:1 1 46%;min-width:0}
    .tools .lbl{width:100%;text-align:right;margin:0!important}
    .statwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -2px}
    .statwrap table{min-width:520px}
    .statwrap::-webkit-scrollbar{height:4px}
    .statwrap::-webkit-scrollbar-thumb{background:var(--line2);border-radius:2px}
    .tag{font-size:10.5px;padding:1px 6px}
    .watch{padding:7px 13px;font-size:12px}          /* a thumb needs a bigger target */
    .notape{font-size:10px}
    .rink{width:78px;height:38px;vertical-align:-12px;margin-right:9px}
    .bar{padding:10px 12px;margin:10px 0;font-size:12.5px}
    .badges{gap:7px;padding:12px 13px}
    .b-lg .badge{font-size:15px;padding:6px 12px}
    .b-md .badge{font-size:13px;padding:5px 10px}
    .b-sm .badge{font-size:11.5px;padding:5px 9px}
    .big{gap:14px 18px}
    .big b{font-size:22px}
    .panel{padding:12px 13px}
    h2{font-size:20px}
    /* the player should not be a letterbox slit on a phone */
    #player .head{flex-wrap:wrap;gap:6px}
  }
/* ---- the ticker ---- */
#tick{border-bottom:1px solid var(--line);margin:0 0 10px;padding:7px 2px 8px}
#tick a{display:flex;align-items:baseline;gap:11px;text-decoration:none;color:var(--txt);white-space:nowrap;opacity:1;transition:opacity .3s ease}
#tick a.fade{opacity:0}
#tickv{font:700 15px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--hot);font-variant-numeric:tabular-nums;flex:0 0 auto}
#tickt{font-size:13.5px;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}
#ticks{font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--dim);flex:0 1 auto;overflow:hidden;text-overflow:ellipsis}
#tick a:focus-visible{outline:2px solid var(--hot);outline-offset:3px}
@media (max-width:620px){#ticks{display:none}#tickt{font-size:13px}}
@media (prefers-reduced-motion:reduce){#tick a{transition:none}}
