
  :root{
    --bg:#f3f5f7;
    --card:#ffffff;
    --muted:#6b7280;
    --accent:#0b66d0; /* blue streaming bar */
    --border:#e5e7eb;
    --card-shadow: 0 1px 2px rgba(16,24,40,0.04);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  }
  .board{
    width:100%;
    max-width: 95vw;
    display:flex;
    flex-direction:column;
    gap:12px;
  }

  .penFont {font-size: 12px;}
  .card{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:8px;
    box-shadow:var(--card-shadow);
    overflow:hidden;
  }

  /* top-right small time text inside the card header area */
  .card .card-body{
    padding:10px 12px;
  }

  .game-compact {
    display:flex;
    flex-direction:column;
    gap:8px;
  }

  .team-row{
    display:flex;
    align-items:center;
    gap:10px;
    padding:6px 0;
  }

  .team-row .left{
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
    flex:1;
  }

  .logo{
    width:28px;
    height:28px;
    border-radius:50%;
    flex:0 0 28px;
    background:#eee;
    object-fit:cover;
    border:1px solid #e6e6e6;
  }

  .team-name{
    font-size:14px;
    font-weight:600;
    color:#111827;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .bd-ppg {
    background:red ! important;
    color:#FFFFFF ! important;
    }
  .bd-shg {
    background:green ! important;
    color:#FFFFFF ! important;
    }
  .bd-eng {
    background:orange ! important;
    color:#FFFFFF ! important;
    }

  .badge{
    display:inline-block;
    font-size:11px;
    padding:2px 6px;
    border-radius:6px;
    background:#e6e7eb;
    color:#1f2937;
    margin-left:6px;
    vertical-align:middle;
  }

  .score-right{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:4px;
    min-width:60px;
  }

  .score{
    font-weight:700;
    font-size:18px;
    color:#111827;
    line-height:1;
  }

  .meta{
    font-size:12px;
    color:var(--muted);
  }

  /* streaming strip */
  .stream-strip{
    background:var(--accent);
    color:#fff;
    text-align:center;
    font-weight:700;
    font-size:13px;
    padding:7px 10px;
  }

  /* compact grey lines (for cards with no stream) */
  .subtle{
    color:var(--muted);
    font-size:13px;
  }

  /* small "Final" tag style */
  .status-pill{
    background:#efefef;
    padding:4px 8px;
    border-radius:10px;
    font-size:12px;
    color:#111827;
    font-weight:600;
  }

  /* tiny timestamp on top-right of each card */
  .card .time-top{
    position:relative;
    display:flex;
    justify-content:space-between;
  }
  .time-top .time{
    margin-left:auto;
    color:var(--muted);
    font-size:12px;
    font-weight:600;
  }

  /* thin divider between games if needed */
  .divider{
    height:1px;
    background:var(--border);
    margin:6px 0;
  }
  
        /* Main Scoreboard Header */
        .scoreboard-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            background-color: white;
            padding: 15px;
            border-radius: 8px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        .team-info {
            text-align: center;
            flex: 1;
        }

        .team-logo {
            height: 45px; /* Placeholder for logo */
            width: 45px;
            display: inline-block;
            background-color: #ccc; /* Visual placeholder */
            border-radius: 50%;
        }

        .team-abbr {
            font-size: 15px;
            font-weight: bold;
            margin-top: 5px;
        }

        .sog {
            font-size: 11px;
            color: #666;
        }

        .score-box {
            display: flex;
            align-items: center;
            flex: 1.5;
            justify-content: space-around;
        }

        .score-number {
            font-size: 30px;
            font-weight: 900;
        }

        .period-info {
            text-align: center;
        }

        .period-time {
            font-size: 15px;
            font-weight: bold;
            padding: 5px 10px;
            background-color: #eee;
            border-radius: 5px;
            margin-bottom: 5px;
        }

        .period-text {
            font-size: 12px;
        }

        /* Scoring Summary Section */
        .scoring-summary {
            margin-top: 20px;
            background-color: white;
            padding: 5px;
            border-radius: 8px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
        }

        .scoring-summary h2 {
            font-size: 24px;
            font-weight: 900;
            margin-bottom: 10px;
            border-bottom: 2px solid #eee;
            padding-bottom: 5px;
        }

        .period-section h3 {
            font-size: 18px;
            margin-top: 15px;
            margin-bottom: 10px;
        }

        .goal-entry {
            border: 1px solid #ddd;
            border-radius: 6px;
            padding: 5px;
            margin-bottom: 5px;
        }

        .scorer-details {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 10px;
        }

        .scorer-profile {
            display: flex;
            align-items: center;
        }

        .scorer-photo {
            height: 40px;
            width: 40px;
            background-color: #f33; /* Visual placeholder */
            border-radius: 50%;
            margin-right: 10px;
        }

        .scorer-name-details strong {
            display: block;
            font-size: 14px;
            font-weight: 700;
        }

        .assists {
            font-size: 12px;
            color: #555;
        }

        .play-button {
            background-color: #007bff; /* Blue color for play button */
            color: white;
            border: none;
            padding: 8px;
            border-radius: 50%;
            font-size: 18px;
            line-height: 1;
            cursor: pointer;
            width: 35px;
            height: 35px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        /* Goal Info Boxes */
        .goal-info-boxes {
            display: flex;
            justify-content: space-around;
            margin-top: 10px;
        }

        .info-box {
            flex: 1;
            text-align: center;
            padding: 3px 0 0 0;
            margin: 0 5px;
            border-radius: 5px;
            background-color: #eee;
            font-size: 14px;
            font-weight: bold;
        }

        .box-label {
            display: block;
            font-size: 10px;
            font-weight: normal;
            color: #666;
            margin-top: 3px;
        }

        .edge-link {
            text-align: center;
            margin-top: 10px;
        }

        .edge-link a {
            color: #007bff;
            text-decoration: none;
            font-weight: bold;
            font-size: 12px;
            padding-bottom: 5px;
            border-bottom: 2px dotted #007bff;
            display: inline-block;
        }
  
