[hidden]{ display:none !important; }
  img{ max-width:100%; }
  :root{
    --ink:#180F09;
    --surface:#231609;
    --surface-2:#2c1c0f;
    --surface-3:#3a2717;
    --line: rgba(241,230,211,0.14);
    --line-strong: rgba(241,230,211,0.24);
    --cream:#F1E6D3;
    --cream-dim:#C9BBA3;
    --muted:#9C8B76;
    --brass:#C6A15B;
    --brass-bright:#E7C583;
    --burgundy:#8A2A35;
    --burgundy-bright:#C1495A;
    --green:#5C8768;
    --green-bright:#82B58F;
    --danger:#B23A46;
    --shadow: 0 24px 60px -24px rgba(0,0,0,0.7);
    --radius: 14px;
    background: var(--ink);
  }

  *{ box-sizing:border-box; }
  body{
    margin:0;
    background: var(--ink);
    color: var(--cream);
    font-family:'Work Sans', system-ui, sans-serif;
    font-size:15px;
    line-height:1.5;
    padding-inline: 0;
  }
  h1,h2,h3,h4{ margin:0; font-family:'Anton', 'Work Sans', sans-serif; font-weight:400; letter-spacing:0.01em; text-wrap:balance; }
  p{ margin:0; }
  a{ color:inherit; text-decoration:none; }
  button{ font-family:inherit; cursor:pointer; }
  ::selection{ background:var(--brass); color:var(--ink); }

  .num{ font-family:'JetBrains Mono', monospace; font-variant-numeric: tabular-nums; }

  .wrap{ max-width:1180px; margin:0 auto; padding-inline: clamp(16px, 4vw, 40px); }

  /* ---------- background texture ---------- */
  .bg-points{
    position:fixed; inset:0; z-index:-1; pointer-events:none;
    background:
      repeating-linear-gradient(115deg, rgba(198,161,91,0.05) 0 2px, transparent 2px 64px),
      repeating-linear-gradient(65deg, rgba(138,42,53,0.05) 0 2px, transparent 2px 64px),
      var(--ink);
  }

  /* ---------- nav ---------- */
  .topnav{
    position:sticky; top:0; z-index:50;
    padding-top: env(safe-area-inset-top, 0px);
    background: rgba(24,15,9,0.88);
    backdrop-filter: blur(10px);
    border-bottom:1px solid var(--line);
  }
  .topnav-inner{
    display:flex; align-items:center; gap:20px;
    padding-block:14px;
  }
  .brand{ display:flex; align-items:center; gap:10px; margin-right:auto; }
  .brand-word{ display:flex; flex-direction:column; line-height:1; }
  .brand-word b{ font-family:'Anton'; font-size:16px; letter-spacing:0.03em; }
  .brand-word span{ font-size:10px; letter-spacing:0.18em; color:var(--brass); text-transform:uppercase; margin-top:3px; }
  .navlinks{ display:flex; gap:4px; overflow-x:auto; scrollbar-width:none; }
  .navlinks::-webkit-scrollbar{ display:none; }
  .navlinks button{
    background:none; border:none; color:var(--cream-dim); font-size:14px; font-weight:600;
    padding:9px 14px; border-radius:999px; transition:.15s; flex-shrink:0;
  }
  .navlinks button:hover{ color:var(--cream); background:var(--surface-2); }
  .navlinks button.active{ color:var(--ink); background:var(--brass); }
  .navlinks button.active:hover{ color: var(--ink); background: var(--brass-bright); }

  .nav-toggle{
    display:none; align-items:center; justify-content:center; flex-shrink:0;
    width:38px; height:38px; border-radius:10px; border:1px solid var(--line-strong);
    background:transparent; color:var(--cream);
  }
  .nav-toggle:hover{ border-color:var(--brass); color:var(--brass-bright); }
  .mobile-menu{ display:none; flex-direction:column; gap:2px; padding-block:10px 16px; border-top:1px solid var(--line); }
  .mobile-menu:not([hidden]){ display:flex; }
  .mobile-menu button{
    background:none; border:none; color:var(--cream-dim); font-size:15.5px; font-weight:700;
    text-align:left; padding:13px 10px; border-radius:9px;
  }
  .mobile-menu button:hover{ background:var(--surface-2); color:var(--cream); }
  .mobile-menu button.active{ color:var(--brass-bright); }

  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:11px 20px; border-radius:999px; border:1px solid transparent;
    font-weight:700; font-size:14px; transition:.15s; white-space:nowrap;
  }
  .btn-brass{ background:var(--brass); color:var(--ink); }
  .btn-brass:hover{ background:var(--brass-bright); }
  .btn-ghost{ background:transparent; color:var(--cream); border-color:var(--line-strong); }
  .btn-ghost:hover{ border-color:var(--brass); color:var(--brass-bright); }
  .btn-sm{ padding:7px 14px; font-size:12.5px; }
  .btn[disabled]{ opacity:.5; cursor:not-allowed; }

  .userchip{ display:flex; align-items:center; gap:9px; background:var(--surface-2); border:1px solid var(--line); padding:6px 14px 6px 6px; border-radius:999px; }
  .avatar{ width:26px; height:26px; border-radius:50%; background:var(--burgundy); color:var(--cream); display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:800; font-family:'Anton'; flex-shrink:0; }
  .userchip button{ background:none; border:none; color:var(--cream-dim); font-size:12px; font-weight:700; }
  .userchip button:hover{ color:var(--danger); }

  /* ---------- layout helpers ---------- */
  .view[hidden]{ display:none; }
  section{ padding-block: 56px; }
  .eyebrow{ font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--brass); font-weight:700; margin-bottom:10px; display:flex; align-items:center; gap:8px;}
  .section-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:26px; flex-wrap:wrap; }
  .section-head h2{ font-size:clamp(22px,3vw,30px); }
  .section-sub{ color:var(--muted); font-size:14px; margin-top:6px; max-width:520px; }

  /* ---------- hero ---------- */
  .hero{ padding-top:64px; padding-bottom:40px; position:relative; }
  .hero-grid{ display:grid; grid-template-columns: 1.15fr 0.85fr; gap:40px; align-items:center; }
  .hero h1{ font-size:clamp(38px,6vw,64px); line-height:0.98; }
  .hero h1 em{ font-style:normal; color:var(--brass); }
  .hero p.lede{ margin-top:18px; font-size:16.5px; color:var(--cream-dim); max-width:480px; }
  .hero-cta{ display:flex; gap:12px; margin-top:28px; flex-wrap:wrap; }
  .hero-stats{ display:flex; gap:28px; margin-top:38px; flex-wrap:wrap; }
  .hero-stats div b{ display:block; font-family:'Anton'; font-size:26px; color:var(--brass-bright); }
  .hero-stats div span{ font-size:11.5px; color:var(--muted); text-transform:uppercase; letter-spacing:0.08em; }

  .board-art{ position:relative; aspect-ratio:1/1; border-radius:20px; background:var(--surface); border:1px solid var(--line); overflow:hidden; box-shadow:var(--shadow); }
  .board-art svg{ width:100%; height:100%; display:block; }

  .live-pill{
    display:inline-flex; align-items:center; gap:8px; background:var(--surface-2); border:1px solid var(--burgundy);
    padding:8px 16px 8px 12px; border-radius:999px; margin-bottom:22px; cursor:pointer; transition:.15s;
  }
  .live-pill:hover{ border-color:var(--burgundy-bright); background:var(--surface-3); }
  .dot-live{ width:8px; height:8px; border-radius:50%; background:var(--burgundy-bright); animation:pulse 1.4s infinite; flex-shrink:0; }
  @keyframes pulse{ 0%,100%{ box-shadow:0 0 0 0 rgba(193,73,90,0.55);} 70%{ box-shadow:0 0 0 7px rgba(193,73,90,0);} }
  .live-pill b{ font-size:12.5px; letter-spacing:0.05em; text-transform:uppercase; color:var(--cream); }
  .live-pill span{ font-size:12.5px; color:var(--muted); }

  /* ---------- cards ---------- */
  .grid-events{ display:grid; grid-template-columns:repeat(auto-fill, minmax(280px,1fr)); gap:18px; }
  .card{
    background:var(--surface); border:1px solid var(--line); border-radius:var(--radius);
    padding:20px; display:flex; flex-direction:column; gap:14px; transition:.15s; cursor:pointer;
  }
  .card:hover{ border-color:var(--brass); transform:translateY(-2px); box-shadow:var(--shadow); }
  .badge{ display:inline-flex; align-items:center; gap:6px; font-size:10.5px; font-weight:800; letter-spacing:0.08em; text-transform:uppercase; padding:4px 10px; border-radius:999px; width:fit-content; }
  .badge-live{ background:rgba(193,73,90,0.16); color:var(--burgundy-bright); }
  .badge-upcoming{ background:rgba(198,161,91,0.14); color:var(--brass-bright); }
  .badge-completed{ background:rgba(92,135,104,0.16); color:var(--green-bright); }
  .card h3{ font-size:19px; font-family:'Work Sans'; font-weight:800; }
  .card-meta{ display:flex; flex-direction:column; gap:5px; font-size:13px; color:var(--cream-dim); }
  .card-meta div{ display:flex; gap:8px; align-items:center; }
  .card-meta svg{ flex-shrink:0; opacity:.7; }
  .card-foot{ display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:12px; border-top:1px solid var(--line); }
  .fee{ font-family:'Anton'; font-size:17px; color:var(--brass-bright); }
  .fee span{ font-family:'Work Sans'; font-size:11px; color:var(--muted); font-weight:600; }
  .fill-bar{ height:5px; border-radius:999px; background:var(--surface-3); overflow:hidden; margin-top:2px;}
  .fill-bar i{ display:block; height:100%; background:var(--brass); }

  .tabs{ display:flex; gap:6px; border-bottom:1px solid var(--line); margin-bottom:26px; overflow-x:auto; }
  .tabs button{ background:none; border:none; color:var(--muted); font-weight:700; font-size:13.5px; padding:10px 4px; margin-right:20px; border-bottom:2px solid transparent; white-space:nowrap; }
  .tabs button:hover{ color:var(--cream); }
  .tabs button.active{ color:var(--brass-bright); border-color:var(--brass); }

  .filterbar{ display:flex; gap:8px; margin-bottom:26px; flex-wrap:wrap; }
  .filterbar button{ background:var(--surface); border:1px solid var(--line); color:var(--cream-dim); padding:8px 16px; border-radius:999px; font-size:13px; font-weight:700; }
  .filterbar button.active{ background:var(--brass); color:var(--ink); border-color:var(--brass); }
  .filterbar button:hover:not(.active){ border-color:var(--brass); color:var(--cream); }

  /* ---------- how it works ---------- */
  .steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
  .step{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:22px 20px; }
  .step b.n{ font-family:'Anton'; font-size:30px; color:var(--surface-3); display:block; -webkit-text-stroke:1px var(--brass); color:transparent; }
  .step h4{ font-family:'Work Sans'; font-size:15.5px; font-weight:800; margin-top:10px; }
  .step p{ font-size:13.5px; color:var(--muted); margin-top:8px; }

  /* ---------- rankings table ---------- */
  .table{ width:100%; border-collapse:collapse; }
  .table th{ text-align:left; font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--muted); font-weight:700; padding:10px 14px; border-bottom:1px solid var(--line); }
  .table td{ padding:13px 14px; border-bottom:1px solid var(--line); font-size:14px; }
  .table tr:last-child td{ border-bottom:none; }
  .table tr:hover td{ background:var(--surface); }
  .rank-num{ font-family:'JetBrains Mono'; color:var(--brass-bright); font-weight:700; }
  .player-cell{ display:flex; align-items:center; gap:10px; }
  .table-wrap{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; overflow-x:auto; }

  /* ---------- about / footer ---------- */
  .about-grid{ display:grid; grid-template-columns: 1fr 1fr; gap:44px; align-items:center; }
  .about-grid p{ color:var(--cream-dim); margin-top:14px; }
  .about-grid p + p{ margin-top:12px; }
  footer{ border-top:1px solid var(--line); padding-block:36px; }
  .footer-grid{ display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; }
  .footer-grid h4{ font-family:'Work Sans'; font-size:13px; font-weight:800; margin-bottom:12px; }
  .footer-links{ display:flex; flex-direction:column; gap:8px; font-size:13.5px; color:var(--cream-dim); }
  .footer-links a:hover{ color:var(--brass-bright); }
  .footer-bottom{ margin-top:30px; padding-top:20px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; }

  /* ---------- event detail ---------- */
  .event-hero{ display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; align-items:flex-start; padding-top:40px; }
  .event-hero h1{ font-size:clamp(28px,4vw,42px); margin-top:10px; }
  .event-stats{ display:flex; gap:28px; flex-wrap:wrap; margin-top:22px; }
  .event-stats div span{ display:block; font-size:11px; text-transform:uppercase; letter-spacing:0.07em; color:var(--muted); margin-bottom:4px;}
  .event-stats div b{ font-family:'Anton'; font-size:20px; color:var(--brass-bright); }
  .backlink{ display:inline-flex; align-items:center; gap:6px; color:var(--muted); font-size:13px; font-weight:700; margin-bottom:6px; }
  .backlink:hover{ color:var(--brass-bright); }

  .players-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:12px; }
  .player-row{ display:flex; align-items:center; gap:10px; background:var(--surface); border:1px solid var(--line); padding:11px 14px; border-radius:10px; }
  .player-row .seed{ font-family:'JetBrains Mono'; font-size:11px; color:var(--muted); width:18px; }

  /* bracket */
  .bracket-scroll{ overflow-x:auto; padding-bottom:12px; }
  .bracket{ display:flex; gap:34px; min-width:820px; }
  .bracket-round{ display:flex; flex-direction:column; width:210px; flex-shrink:0; }
  .round-title{ font-size:11.5px; text-transform:uppercase; letter-spacing:0.08em; color:var(--brass); font-weight:700; margin-bottom:14px; text-align:center; }
  .round-col{ flex:1; display:flex; flex-direction:column; justify-content:space-around; }
  .match{ background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:4px; position:relative; }
  .match.live{ border-color:var(--burgundy); box-shadow:0 0 0 1px var(--burgundy); }
  .match.done{ border-color:var(--line); }
  .bye-match{ border-style:dashed; }
  .slot{ display:flex; align-items:center; justify-content:space-between; padding:8px 10px; gap:8px; border-radius:7px; }
  .slot.winner{ background:rgba(198,161,91,0.12); }
  .slot.winner .slot-name{ color:var(--brass-bright); font-weight:800; }
  .slot-name{ font-size:12.5px; font-weight:600; color:var(--cream-dim); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .slot-score{ font-family:'JetBrains Mono'; font-size:12px; color:var(--muted); flex-shrink:0; }
  .slot.winner .slot-score{ color:var(--brass-bright); }
  .match-tag{ text-align:center; font-size:10px; color:var(--burgundy-bright); font-weight:800; letter-spacing:0.06em; text-transform:uppercase; padding:5px 0 2px; }
  .tbd .slot-name{ color:var(--muted); font-style:italic; }
  .champion-slot{ display:flex; flex-direction:column; align-items:center; justify-content:center; height:100%; gap:10px; text-align:center; }
  .champion-slot svg{ width:34px; height:34px; }
  .champion-slot b{ font-family:'Anton'; font-size:16px; color:var(--brass-bright); }
  .champion-slot span{ font-size:10.5px; text-transform:uppercase; letter-spacing:0.08em; color:var(--muted); }

  /* standings */
  .standing-cols{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .standing-block h4{ font-family:'Work Sans'; font-weight:800; font-size:13.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--muted); margin-bottom:12px; }
  .standing-item{ display:flex; align-items:center; justify-content:space-between; padding:11px 14px; background:var(--surface); border:1px solid var(--line); border-radius:9px; margin-bottom:8px; font-size:13.5px; }
  .standing-item b{ font-weight:700; }
  .standing-item .round-out{ font-size:11px; color:var(--muted); font-family:'JetBrains Mono'; }

  /* prizes */
  .prize-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .prize-card{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:24px 18px; text-align:center; }
  .prize-card.gold{ border-color:var(--brass); background:linear-gradient(180deg, rgba(198,161,91,0.14), var(--surface)); }
  .prize-card svg{ width:30px; height:30px; margin-bottom:10px; }
  .prize-card .place{ font-size:11px; text-transform:uppercase; letter-spacing:0.1em; color:var(--muted); font-weight:700; }
  .prize-card .amt{ font-family:'Anton'; font-size:30px; color:var(--brass-bright); margin-top:6px; }
  .prize-card .who{ font-size:12.5px; color:var(--cream-dim); margin-top:8px; }

  .enroll-box{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:22px; display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; margin-top:26px; }
  .enroll-box p{ color:var(--muted); font-size:13px; margin-top:4px; max-width:360px; }

  /* ---------- modal ---------- */
  .overlay{ position:fixed; inset:0; background:rgba(10,6,3,0.72); backdrop-filter:blur(3px); display:flex; align-items:center; justify-content:center; z-index:100; padding:20px; }
  .overlay[hidden]{ display:none; }
  .modal{ background:var(--surface-2); border:1px solid var(--line-strong); border-radius:18px; width:100%; max-width:420px; padding:26px; box-shadow:var(--shadow); max-height:88vh; overflow-y:auto; }
  .modal-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
  .modal-head h3{ font-family:'Work Sans'; font-weight:800; font-size:18px; }
  .modal-close{ background:none; border:none; color:var(--muted); font-size:20px; line-height:1; padding:4px; }
  .modal-close:hover{ color:var(--cream); }
  .field{ margin-bottom:14px; }
  .field label{ display:block; font-size:12px; font-weight:700; color:var(--cream-dim); margin-bottom:6px; }
  .field input{
    width:100%; background:var(--surface); border:1px solid var(--line-strong); color:var(--cream);
    padding:11px 13px; border-radius:9px; font-size:14px; font-family:inherit;
  }
  .field input:focus{ outline:2px solid var(--brass); outline-offset:1px; border-color:var(--brass); }
  .field-row{ display:flex; gap:10px; }
  .auth-tabs{ display:flex; background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:3px; margin-bottom:20px; }
  .auth-tabs button{ flex:1; background:none; border:none; color:var(--muted); font-weight:700; font-size:13px; padding:9px; border-radius:8px; }
  .auth-tabs button.active{ background:var(--brass); color:var(--ink); }
  .modal-note{ font-size:11.5px; color:var(--muted); margin-top:14px; text-align:center; line-height:1.5; }
  .pay-summary{ background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:14px 16px; margin-bottom:18px; display:flex; justify-content:space-between; align-items:center; }
  .pay-summary div span{ display:block; font-size:11px; color:var(--muted); text-transform:uppercase; letter-spacing:0.06em; }
  .pay-summary div b{ font-family:'Anton'; font-size:22px; color:var(--brass-bright); }
  .success-box{ text-align:center; padding:14px 0 4px; }
  .success-box svg{ width:52px; height:52px; margin-bottom:16px; }
  .success-box h3{ font-family:'Anton'; font-size:22px; margin-bottom:8px; }
  .success-box p{ color:var(--muted); font-size:13.5px; margin-bottom:22px; }
  .toast{ position:fixed; bottom:calc(24px + env(safe-area-inset-bottom, 0px)); left:50%; transform:translateX(-50%) translateY(16px); background:var(--brass); color:var(--ink); font-weight:700; font-size:13.5px; padding:13px 22px; border-radius:999px; z-index:200; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .25s ease, transform .25s ease, visibility .25s; box-shadow:var(--shadow); max-width:calc(100vw - 32px); text-align:center; }
  .toast.show{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }

  .empty{ text-align:center; padding:60px 20px; color:var(--muted); }
  .empty svg{ width:40px; height:40px; margin-bottom:14px; opacity:.6; }
  .empty h3{ font-family:'Work Sans'; font-weight:800; color:var(--cream); font-size:17px; margin-bottom:8px; }

  @media (max-width: 860px){
    .hero-grid{ grid-template-columns:1fr; }
    .board-art{ max-width:360px; margin:0 auto; }
    .about-grid{ grid-template-columns:1fr; }
    .steps{ grid-template-columns:1fr 1fr; }
    .prize-grid{ grid-template-columns:1fr; }
    .standing-cols{ grid-template-columns:1fr; }
    .brand-word span{ display:none; }
  }
  @media (max-width: 860px){
    .navlinks{ display:none; }
    .nav-toggle{ display:flex; }
  }
  @media (min-width: 861px){
    .mobile-menu{ display:none !important; }
  }
  @media (max-width: 520px){
    .steps{ grid-template-columns:1fr; }
    .hero-stats{ gap:20px; }
    .event-stats{ gap:18px; }
    .topnav-inner{ gap:10px; }
  }

/* ===================== v2: live site additions ===================== */
code{ font-family:'JetBrains Mono', monospace; font-size:.92em; background:var(--surface-3); padding:1px 6px; border-radius:5px; }
.banner{ background:var(--surface-3); color:var(--cream-dim); text-align:center; font-size:12.5px; padding:8px 16px; border-bottom:1px solid var(--line); }
.badge-muted{ background:rgba(156,139,118,0.16); color:var(--muted); }
.plain{ font-family:'Work Sans', sans-serif !important; font-size:14.5px !important; font-weight:700 !important; color:var(--cream) !important; }
.cta-box{ min-width:220px; }
#edTabs{ margin-top:36px; }
.cta-stack{ display:flex; flex-direction:column; align-items:flex-end; gap:10px; max-width:320px; }
.cta-note{ font-size:12.5px; color:var(--muted); text-align:right; }
.btn-link, .linklike{ background:none; border:none; color:var(--muted); font-size:12.5px; font-weight:600; text-decoration:underline; padding:2px; }
.btn-link:hover, .linklike:hover{ color:var(--brass-bright); }
.pill{ display:inline-flex; align-items:center; font-size:11.5px; font-weight:700; padding:4px 11px; border-radius:999px; background:var(--surface-3); color:var(--cream-dim); white-space:nowrap; }
.pill-ok{ background:rgba(92,135,104,0.2); color:var(--green-bright); }
.pill-warn{ background:rgba(198,161,91,0.16); color:var(--brass-bright); }
.pill-sm{ font-size:10px; padding:2px 8px; }
.fill-text{ font-size:11.5px; color:var(--muted); margin-top:5px; }
.fee-sub{ font-size:10.5px; color:var(--muted); }
.avatar-muted{ background:var(--surface-3); color:var(--brass-bright); }
.avatar-sm{ width:24px; height:24px; font-size:10px; }
.avatar-lg{ width:52px; height:52px; font-size:18px; }
.points{ color:var(--brass-bright); font-weight:700; }
.muted-cell{ color:var(--muted); font-size:13.5px; padding:18px 14px !important; }
.ph{ color:var(--muted) !important; font-style:italic; }
.slot.faded{ opacity:.45; }
.muted-tag{ color:var(--muted) !important; }
.match.champion{ margin-top:16px; min-height:90px; }
.match.tbd .slot-name{ font-style:normal; }
.match.tbd .slot-name.ph{ font-style:italic; }
.champ-line{ text-align:right; }
.champ-line span{ display:block; font-size:11px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }
.champ-line b{ font-family:'Anton'; font-size:19px; color:var(--brass-bright); font-weight:400; }
.prose{ max-width:640px; padding-block:8px; }
.prose > p{ color:var(--cream-dim); font-size:15px; line-height:1.7; }
.note-box{ margin-top:24px; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:18px 20px; }
.note-box h4{ font-family:'Work Sans'; font-weight:800; font-size:14px; margin-bottom:6px; }
.note-box p{ color:var(--muted); font-size:13.5px; }
.fineprint{ color:var(--muted); font-size:12.5px; margin-top:16px; }
.who.big{ font-size:15px; font-weight:800; color:var(--cream); margin-top:6px; }
.standing-item.dim{ opacity:.7; }
.pname{ font-size:13px; font-weight:600; flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.card-wrap{ display:flex; flex-direction:column; gap:8px; }
.card-status{ display:flex; gap:8px; flex-wrap:wrap; }
.profile-head{ display:flex; align-items:center; gap:14px; margin-bottom:30px; }
.profile-name{ font-family:'Anton'; font-size:20px; }
.profile-sub{ color:var(--muted); font-size:13px; }
.chip-name{ font-size:13px; font-weight:700; }
.navlinks button.nav-admin:not(.active), .mobile-menu button.nav-admin:not(.active){ color:var(--brass-bright); }
.modal-wide{ max-width:520px; }
.modal-text{ color:var(--cream-dim); font-size:14px; margin-bottom:16px; }
.pay-meta{ text-align:right; font-size:12px; color:var(--muted); }
.form-error{ background:rgba(178,58,70,0.15); color:#e58a94; border:1px solid rgba(178,58,70,0.4); border-radius:9px; padding:10px 12px; font-size:13px; margin:0 0 12px; }
.form-error.ok{ background:rgba(92,135,104,0.16); color:var(--green-bright); border-color:rgba(92,135,104,0.4); }
.field select, .field textarea{
  width:100%; background:var(--surface); border:1px solid var(--line-strong); color:var(--cream);
  padding:11px 13px; border-radius:9px; font-size:14px; font-family:inherit;
}
.field textarea{ resize:vertical; }
.field select:focus, .field textarea:focus{ outline:2px solid var(--brass); outline-offset:1px; border-color:var(--brass); }
.field small{ display:block; margin-top:5px; font-size:11.5px; color:var(--muted); }
.field-row > .field, .field-row > input{ flex:1; min-width:0; }
.field-row input{ width:100%; background:var(--surface); border:1px solid var(--line-strong); color:var(--cream); padding:11px 13px; border-radius:9px; font-size:14px; font-family:inherit; }
button:focus-visible, a:focus-visible, .card:focus-visible{ outline:2px solid var(--brass); outline-offset:2px; }

/* admin */
.btn.danger, .btn-ghost.danger{ color:#e58a94; }
.btn-ghost.danger:hover{ border-color:var(--danger); color:#f0a0a8; }
.sub{ color:var(--muted); font-size:12.5px; }
.sub a{ text-decoration:underline; }
.admin-head{ display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; align-items:flex-start; margin-block:14px 24px; }
.admin-head h1{ font-size:clamp(26px,4vw,36px); margin-block:10px 6px; }
.admin-actions{ display:flex; gap:8px; flex-wrap:wrap; }
.admin-stats{ display:flex; gap:12px; flex-wrap:wrap; margin-bottom:28px; }
.admin-stats div{ background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:12px 18px; min-width:110px; }
.admin-stats b{ display:block; font-family:'Anton'; font-weight:400; font-size:24px; color:var(--brass-bright); }
.admin-stats span{ font-size:11.5px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }
.admin-h{ font-size:20px; margin:32px 0 14px; }
.round-block{ margin-top:20px; }
.round-block h4{ font-family:'Work Sans'; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--brass); font-weight:800; margin-bottom:10px; }
.match-admin-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); gap:12px; }
.match-admin{ background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:12px; display:flex; flex-direction:column; gap:8px; }
.match-admin.live{ border-color:var(--burgundy); }
.match-admin.bye{ border-style:dashed; }
.ma-tag{ font-size:10.5px; text-transform:uppercase; letter-spacing:.08em; color:var(--muted); font-weight:800; }
.ma-row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }
.ma-name{ font-size:13px; font-weight:600; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ma-score{ width:58px; background:var(--surface-2); border:1px solid var(--line-strong); color:var(--cream); border-radius:8px; padding:7px 8px; font-family:'JetBrains Mono', monospace; font-size:13px; text-align:center; }
.ma-score:disabled{ opacity:.4; }
.ma-actions{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
@media (max-width: 520px){
  .cta-stack{ align-items:flex-start; }
  .cta-note{ text-align:left; }
  .champ-line{ text-align:left; }
}
.userchip{ white-space:nowrap; }
@media (max-width: 420px){ .chip-name{ display:none; } .userchip{ padding-right:10px; gap:7px; } }
