/* ═══════════════ SwiftScore · Points table ═══════════════ */
.pt-table th,.pt-table td{text-align:center!important;white-space:nowrap}
.pt-table th.pt-l,.pt-table td.pt-l{text-align:left!important}
.pt-pos{font-family:var(--ff-head);font-weight:800;width:40px}
.pt-team{display:inline-flex;align-items:center;gap:10px}
.pt-table tr.pt-q td:first-child{box-shadow:inset 3px 0 0 #10b981}
.pt-table tr.pt-q .pt-pos{color:#10b981}
.pt-pts{font-family:var(--ff-head);font-weight:800;font-size:.95rem}
.pt-nrr{font-family:var(--ff-mono);font-size:.82rem}
.pt-nrr.up{color:#10b981}
.pt-nrr.down{color:#ef4444}
.pt-f{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;font-size:.58rem;font-weight:800;margin-right:3px;color:#fff}
.pt-f.w{background:#10b981}
.pt-f.l{background:#ef4444}
.pt-f.t{background:#f59e0b}
.pt-f.nr{background:#9ca3af;font-size:.48rem}
.pt-legend{display:inline-block;width:10px;height:10px;border-radius:3px;background:#10b981;margin-right:6px;vertical-align:middle}
.pt-fill{border:1px dashed var(--ss-border2)}

/* ── Match awards ── */
.aw-row{--ac:#f59e0b;display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px dashed var(--ss-border)}
.aw-row:last-child{border-bottom:none}
.aw-ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;background:var(--ac);color:#fff;font-size:1.1rem;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.aw-lbl{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ac);font-weight:800}
.aw-nm{font-weight:700;color:var(--ss-text)}
.aw-tb{width:auto!important;height:auto!important;padding:2px 6px;font-size:.5rem;margin-left:6px;vertical-align:middle;border-radius:5px!important}
.aw-ln{font-family:var(--ff-mono);font-size:.76rem;color:var(--ss-muted)}

/* ── Tournament leaders ── */
.ld-tile{--ac:#0891b2;display:flex;align-items:center;gap:12px;padding:14px 16px;height:100%}
.ld-tile .aw-ic{background:var(--ac)}
.ld-tile .k{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ac);font-weight:800}
.ld-tile .v{font-family:var(--ff-head);font-weight:800;font-size:1.35rem;color:var(--ss-text);line-height:1.1}
.ld-tile .p{font-size:.76rem;color:var(--ss-muted)}
.ld-table th,.ld-table td{text-align:center!important;white-space:nowrap}
.ld-table th.ld-l,.ld-table td.ld-l{text-align:left!important}
.ld-rank{font-family:var(--ff-head);font-weight:800;width:34px}
.ld-table tbody tr:first-child .ld-rank{color:#f59e0b}
.ld-table .ld-main{font-family:var(--ff-head);font-weight:800;font-size:.95rem}
.ld-p{display:inline-flex;align-items:center;gap:8px}

/* ── Player career ── */
.pc-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(125px,1fr));gap:10px;margin-bottom:16px}
.pc-tile{--ac:#0891b2;padding:12px 14px;border-radius:12px;border:1px solid var(--ss-border,#1b3a4b);border-top:3px solid var(--ac);background:var(--ss-card,#0b1f2b)}
.pc-tile .k{font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ss-muted,#7fa6b8);font-weight:700}
.pc-tile .v{font-family:var(--ff-head);font-weight:800;font-size:1.3rem;color:var(--ss-text,#e6f4fa);line-height:1.2}
.pc-res{display:inline-grid;place-items:center;min-width:28px;height:22px;padding:0 6px;border-radius:6px;font-size:.6rem;font-weight:800;color:#fff}
.pc-res.w{background:#10b981}.pc-res.l{background:#ef4444}.pc-res.t{background:#f59e0b}.pc-res.live{background:#dc2626}
.pc-link{color:inherit;text-decoration:none;font-weight:600}
.pc-link:hover{color:var(--org,#22d3ee);text-decoration:underline}

/* ── Points table: clickable rows + played / remaining panel ── */
.pt-row{cursor:pointer}
.pt-row:hover td{background:rgba(16,185,129,.06)!important}
.pt-row:focus{outline:2px solid rgba(16,185,129,.45);outline-offset:-2px}
.pt-chev{display:inline-block;margin-left:4px;font-size:.68rem;opacity:.45;transition:transform .2s,opacity .2s}
.pt-row.open .pt-chev{transform:rotate(180deg);opacity:1;color:#10b981}
.pt-row.open td{background:rgba(16,185,129,.05)!important}
.pt-table .pt-detail > td{padding:0!important;text-align:left!important;white-space:normal!important}
.pt-dwrap{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:12px 16px 14px;border-left:3px solid var(--ptc,#10b981);
  background:linear-gradient(90deg,color-mix(in srgb,var(--ptc,#10b981) 7%,transparent),transparent 60%)}
.pt-dh{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;opacity:.7;margin-bottom:6px}
.pt-mi{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:10px;border:1px solid var(--ss-border,#e5e7eb);
  margin-bottom:6px;text-decoration:none!important;color:inherit!important;font-size:.8rem;transition:border-color .15s,transform .15s}
.pt-mi:hover{border-color:#10b981;transform:translateX(2px)}
.pt-mi .opp{font-weight:700;white-space:nowrap;display:inline-flex;align-items:center}
.pt-mi .sc{font-family:var(--ff-mono,monospace);font-size:.72rem;opacity:.85;white-space:nowrap}
.pt-mi .rs{margin-left:auto;font-size:.72rem;opacity:.8;text-align:right;line-height:1.3}
.pt-mi .rs small{opacity:.75}
.pt-f.up{background:#2563eb;font-size:.55rem}
.pt-f.live{background:#dc2626;font-size:.48rem;width:auto;padding:0 4px}
.pt-none{font-size:.76rem;opacity:.6;padding:4px 0}
@media(max-width:767px){.pt-dwrap{grid-template-columns:1fr}.pt-mi .sc{display:none}}

/* ── Points table ➕ button + digital popup ── */
.pt-table tbody tr{cursor:default}
.pt-plus{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;margin-left:4px;vertical-align:middle;
  border:1px dashed #10b981;background:transparent;color:#10b981;font-weight:800;font-size:.9rem;line-height:1;cursor:pointer;transition:all .15s}
.pt-plus:hover,.pt-plus:focus{background:#10b981;color:#fff;border-style:solid;box-shadow:0 0 10px rgba(16,185,129,.55);outline:none}

.ptm-ov{position:fixed;inset:0;z-index:2100;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(3,10,16,.6);backdrop-filter:blur(3px)}
.ptm-ov[hidden]{display:none}
.ptm-box{position:relative;width:100%;max-width:440px;max-height:86vh;overflow:auto;border-radius:18px;color:#d6ecf5;
  background:linear-gradient(160deg,#0d2433 0%,#081723 60%,#06121a 100%);border:1px solid #1d4155;
  box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 0 1px rgba(34,211,238,.08);animation:ptmIn .18s ease}
@keyframes ptmIn{from{transform:translateY(10px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.ptm-box::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,#22d3ee,transparent);z-index:2}
.ptm-box::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;
  background-image:linear-gradient(rgba(34,211,238,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(34,211,238,.05) 1px,transparent 1px);background-size:18px 18px}
.ptm-body{position:relative;z-index:1;padding:16px 16px 12px}
.ptm-x{position:absolute;top:10px;right:10px;z-index:3;width:30px;height:30px;border-radius:50%;border:1px solid #1d4155;
  background:rgba(255,255,255,.05);color:#cfe6f1;font-size:18px;line-height:1;cursor:pointer}
.ptm-x:hover{border-color:#22d3ee;color:#fff}
.ptm-head{display:flex;align-items:center;gap:12px;padding-right:32px}
.ptm-badge{width:44px!important;height:44px!important;font-size:.7rem!important;border-radius:12px!important;
  box-shadow:0 0 14px color-mix(in srgb,var(--tc) 60%,transparent)!important}
.ptm-name{font-family:var(--ff-head,sans-serif);font-weight:800;font-size:1.1rem;color:#fff;line-height:1.2}
.ptm-sub{font-family:var(--ff-mono,monospace);font-size:.66rem;color:#67e8f9;letter-spacing:.08em;margin-top:2px}
.ptm-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:14px 0 4px}
.ptm-stats div{text-align:center;padding:7px 4px;border-radius:10px;border:1px solid #1d4155;background:rgba(6,18,26,.6)}
.ptm-stats b{display:block;font-family:var(--ff-head,sans-serif);font-size:1.02rem;color:#fff;text-shadow:0 0 8px rgba(34,211,238,.4)}
.ptm-stats b.up{color:#34d399;text-shadow:0 0 8px rgba(52,211,153,.4)}
.ptm-stats b.down{color:#f87171;text-shadow:0 0 8px rgba(248,113,113,.4)}
.ptm-stats span{font-size:.54rem;letter-spacing:.14em;text-transform:uppercase;color:#7fa6b8}
.ptm-sec{display:flex;align-items:center;gap:8px;margin:14px 0 6px;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#67e8f9}
.ptm-sec::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,#1d4155,transparent)}
.ptm-next{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(34,211,238,.35);
  background:rgba(34,211,238,.06);text-decoration:none!important;color:#fff!important;transition:all .15s}
.ptm-next:hover{border-color:#22d3ee;box-shadow:0 0 14px rgba(34,211,238,.25)}
.ptm-next .o{font-weight:700;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.ptm-next .d{font-family:var(--ff-mono,monospace);font-size:.66rem;color:#9cc3d5;margin-top:2px}
.ptm-next > i{margin-left:auto;color:#67e8f9}
.ptm-tag{font-family:var(--ff-head,sans-serif);font-weight:800;font-size:.56rem;letter-spacing:.12em;padding:4px 8px;border-radius:7px;background:#2563eb;color:#fff;flex-shrink:0}
.ptm-tag.live{background:#dc2626;box-shadow:0 0 10px rgba(220,38,38,.6)}
.ptm-row{display:flex;align-items:center;gap:8px;padding:7px 10px;margin-bottom:6px;border-radius:10px;border:1px solid #173446;
  background:rgba(6,18,26,.45);text-decoration:none!important;color:#d6ecf5!important;font-size:.78rem;transition:border-color .15s}
.ptm-row:hover{border-color:#22d3ee}
.ptm-row .o{display:inline-flex;align-items:center;gap:4px;font-weight:700;white-space:nowrap}
.ptm-row .s{font-family:var(--ff-mono,monospace);font-size:.66rem;color:#9cc3d5;white-space:nowrap}
.ptm-row .r{margin-left:auto;font-size:.68rem;color:#cfe6f1;text-align:right}
.ptm-none{font-size:.74rem;color:#7fa6b8;padding:4px 2px}
@media(max-width:575px){.ptm-row .s{display:none}.ptm-stats b{font-size:.9rem}}
