.sl-layout { display: grid; grid-template-columns: 240px 1fr; gap: 0; min-height: calc(100vh - 64px); }
        .sl-mobile-toggle { display: none; }
        .sl-backdrop { display: none; }
        @media (max-width: 900px) {
          .sl-layout { grid-template-columns: 1fr; }
          .sl-left {
            position: fixed; top: 64px; left: 0; bottom: 0;
            width: 280px; max-width: 85vw;
            transform: translateX(-100%); transition: transform .25s ease;
            z-index: 70; height: auto;
          }
          .sl-left--open { transform: translateX(0); box-shadow: 0 0 40px rgba(0,0,0,.5); }
          .sl-backdrop {
            display: block; position: fixed; inset: 64px 0 0 0;
            background: rgba(0,0,0,.55); z-index: 65;
          }
          .sl-mobile-toggle {
            display: inline-flex; align-items: center; gap: 8px;
            margin-bottom: 12px;
            padding: 8px 14px; border-radius: 8px;
            background: var(--color-surface); border: 1px solid var(--color-surface-border);
            color: var(--color-text-main); font-size: 13px; font-weight: 700;
          }
          .sl-mobile-toggle:hover { border-color: var(--color-gold); color: var(--color-gold); }
        }

        .sl-left {
          border-right: 1px solid var(--color-surface-border);
          background: rgba(20, 10, 48, 0.6);
          padding: 12px 0 24px;
          position: sticky; top: 64px; height: calc(100vh - 64px); overflow-y: auto;
        }
        .sl-left__search { margin: 4px 12px 10px; position: relative; }
        .sl-left__search input {
          width: 100%; background: var(--color-base);
          border: 1px solid var(--color-surface-border);
          color: var(--color-text-main); font-size: 13px; font-weight: 600;
          padding: 9px 12px 9px 32px; border-radius: 8px; outline: none;
        }
        .sl-left__search input:focus { border-color: var(--color-gold); }
        .sl-left__search-icon { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); font-size: 13px; color: var(--color-text-dim); }
        .sl-left__row { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 11px 16px; font-size: 13px; font-weight: 700; color: var(--color-text-main); text-align: left; border-left: 3px solid transparent; transition: background .15s; }
        .sl-left__row:hover { background: var(--color-surface-hover); border-left-color: var(--color-gold); }
        .sl-left__row-left { display: flex; align-items: center; gap: 12px; }
        .sl-left__icon { font-size: 15px; width: 20px; text-align: center; }
        .sl-left__chev { font-size: 10px; color: var(--color-text-dim); transition: transform .2s; }
        .sl-left__chev--open { transform: rotate(90deg); color: var(--color-gold); }
        .sl-left__sub { background: rgba(0,0,0,.18); border-top: 1px solid var(--color-surface-border); border-bottom: 1px solid var(--color-surface-border); }
        .sl-left__sub-row { display: flex; align-items: center; gap: 12px; padding: 9px 16px 9px 36px; font-size: 12.5px; font-weight: 600; color: var(--color-text-muted); border-left: 3px solid transparent; transition: all .15s; }
        .sl-left__sub-row:hover { color: var(--color-gold); border-left-color: var(--color-gold); background: var(--color-surface-hover); }

        /* CENTER */
        .sl-center { padding: 14px 24px 32px; min-width: 0; }
        @media (max-width: 720px) {
          .sl-center { padding: 12px 14px 24px; }
          .sl-league { padding: 12px 14px; }
          .sl-league__title { font-size: 13px; }
          .sl-round__head { padding: 10px 14px; font-size: 12px; }
          .sl-match { padding: 12px 12px 14px; }
          .sl-match__top { flex-direction: column; gap: 10px; }
          .sl-match__right { flex-direction: row; align-items: center; gap: 10px; align-self: stretch; justify-content: space-between; }
          .sl-meta__when, .sl-meta__round { font-size: 10.5px; }
          .sl-teams__names { font-size: 12px; }
          .sl-market__opts { padding: 8px; gap: 6px; }
          .sl-opt { padding: 10px 6px; }
          .sl-opt__name { font-size: 11px; }
          .sl-opt__odds { font-size: 12px; }
        }

        .sl-crumb { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--color-text-muted); margin-bottom: 14px; }
        .sl-crumb a { color: var(--color-text-muted); }
        .sl-crumb a:hover { color: var(--color-gold); }
        .sl-crumb__sep { opacity: .55; }

        /* League header */
        .sl-league {
          background: var(--color-surface);
          border: 1px solid var(--color-surface-border);
          border-left: 3px solid var(--color-gold);
          border-radius: var(--radius-md);
          padding: 14px 18px;
          display: flex; align-items: center; justify-content: space-between;
          margin-bottom: 12px;
        }
        .sl-league__title { font-size: 15px; font-weight: 800; color: var(--color-gold); letter-spacing: .01em; }
        .sl-chev-btn {
          width: 28px; height: 28px; border-radius: 999px;
          border: 1px solid var(--color-surface-border);
          display: flex; align-items: center; justify-content: center;
          color: var(--color-text-muted); font-size: 12px;
          transition: transform .2s, color .15s, border-color .15s;
        }
        .sl-chev-btn:hover { color: var(--color-gold); border-color: var(--color-gold); }
        .sl-chev-btn--up { transform: rotate(180deg); }

        /* Round card */
        .sl-round {
          background: var(--color-surface);
          border: 1px solid var(--color-surface-border);
          border-radius: var(--radius-md);
          overflow: hidden;
        }
        .sl-round__head {
          display: flex; align-items: center; justify-content: space-between;
          padding: 12px 16px;
          background: var(--color-surface-2);
          border-bottom: 1px solid var(--color-surface-border);
          font-size: 13px; font-weight: 800; color: var(--color-text-main);
        }

        /* Match row */
        .sl-match {
          padding: 14px 16px 16px;
          border-bottom: 1px solid var(--color-surface-border);
        }
        .sl-match:last-child { border-bottom: 0; }
        .sl-match__top {
          display: flex; align-items: flex-start; justify-content: space-between; gap: 14px;
          margin-bottom: 12px;
        }
        .sl-match__info { display: flex; gap: 12px; min-width: 0; flex: 1; }
        .sl-ball {
          width: 28px; height: 28px; border-radius: 999px;
          background: linear-gradient(135deg, #c2410c, #9a3412);
          display: flex; align-items: center; justify-content: center;
          font-size: 12px; flex-shrink: 0; margin-top: 2px;
        }
        .sl-meta { min-width: 0; }
        .sl-meta__when { font-size: 11px; color: var(--color-gold); font-weight: 700; }
        .sl-meta__round { font-size: 11px; color: var(--color-text-muted); margin-top: 2px; }
        .sl-meta__teams { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
        .sl-silks {
          display: flex; flex-direction: column; gap: 2px;
        }
        .sl-silk { width: 18px; height: 10px; border-radius: 2px; }
        .sl-silk--fre { background: linear-gradient(90deg, #581c87 50%, #fff 50%); border: 1px solid rgba(255,255,255,.2); }
        .sl-silk--car { background: linear-gradient(90deg, #1e3a8a, #f59e0b); }
        .sl-silk--stk { background: repeating-linear-gradient(90deg, #dc2626 0 4px, #fff 4px 6px, #000 6px 10px); }
        .sl-silk--wce { background: linear-gradient(90deg, #1e3a8a 33%, #facc15 33% 66%, #1e3a8a 66%); }
        .sl-silk--bri { background: linear-gradient(90deg, #7c2d12, #facc15, #1e3a8a); }
        .sl-silk--adl { background: linear-gradient(180deg, #1e3a8a 33%, #dc2626 33% 66%, #facc15 66%); }
        .sl-silk--gws { background: linear-gradient(90deg, #f97316 50%, #1f2937 50%); }
        .sl-silk--nm { background: repeating-linear-gradient(90deg, #1e40af 0 4px, #fff 4px 8px); }
        .sl-teams__names { display: flex; flex-direction: column; gap: 2px; font-size: 13px; font-weight: 700; color: var(--color-text-main); }

        .sl-match__right {
          display: flex; flex-direction: column; align-items: flex-end; gap: 6px; flex-shrink: 0;
        }
        .sl-sgm-tag {
          display: inline-flex; align-items: center; gap: 6px;
          padding: 3px 8px; border-radius: 6px;
          background: var(--color-gold-dim);
          color: var(--color-gold);
          border: 1px solid var(--color-gold);
          font-size: 10px; font-weight: 800; letter-spacing: .04em;
        }
        .sl-markets { font-size: 11px; color: var(--color-text-muted); font-weight: 600; }
        .sl-countdown { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; color: var(--color-text-main); }
        .sl-countdown:hover { color: var(--color-gold); }

        /* Markets grid */
        .sl-markets-grid {
          display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
        }
        @media (max-width: 720px) { .sl-markets-grid { grid-template-columns: 1fr; } }
        .sl-market {
          background: var(--color-base);
          border: 1px solid var(--color-surface-border);
          border-radius: 10px;
          overflow: hidden;
        }
        .sl-market__title {
          padding: 8px 12px;
          font-size: 12px; font-weight: 700; color: var(--color-text-muted);
          text-align: center;
          border-bottom: 1px solid var(--color-surface-border);
        }
        .sl-market__opts {
          display: grid; grid-template-columns: 1fr 1fr; gap: 8px;
          padding: 10px;
        }
        .sl-opt {
          display: flex; flex-direction: column; align-items: center; gap: 4px;
          padding: 12px 10px;
          background: rgba(99, 102, 241, .12);
          border: 1px solid rgba(99, 102, 241, .25);
          border-radius: 8px;
          transition: all .15s;
          cursor: pointer;
        }
        .sl-opt:hover {
          background: rgba(99, 102, 241, .22);
          border-color: var(--color-gold);
        }
        .sl-opt__name { font-size: 11.5px; font-weight: 600; color: var(--color-text-main); text-align: center; line-height: 1.25; }
        .sl-opt__bottom { display: flex; align-items: center; gap: 6px; }
        .sl-opt__line { font-size: 11px; color: var(--color-text-muted); font-weight: 700; }
        .sl-opt__odds { font-size: 13px; font-weight: 800; color: var(--color-gold); font-variant-numeric: tabular-nums; }