/* ===== V7 Professional Sports Portal ===== */
    :root {
        --brand: #1D4ED8; /* Professional Sports Blue */
        --brand-hover: #1E40AF;
        --nav-bg: #0B1221; /* Dark Navy for Header */
        --nav-text: #F3F4F6;
        --bg: #F1F5F9; /* Slate 100 for sports sites */
        --card-bg: #FFFFFF;
        --text-main: #0F172A;
        --text-sub: #475569;
        --text-muted: #94A3B8;
        --border: #E2E8F0;
        --accent-red: #E11D48; /* Breaking news red */
    }

    * { box-sizing: border-box; }
    body, html { margin: 0; padding: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; background-color: var(--bg); color: var(--text-main); }
    img { display: block; max-width: 100%; object-fit: cover; }
    a { text-decoration: none; color: inherit; cursor: pointer; }
    button { cursor: pointer; font-family: inherit; }

    /* Header & Nav */
    .portal-header { background-color: #040914; color: #FFF; position: sticky; top: 0; z-index: 100; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2); }
    
    .header-top-bar { background-color: #111827; border-bottom: 1px solid rgba(255,255,255,0.05); }
    .header-top-inner { max-width: 1400px; margin: 0 auto; padding: 6px 24px; display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: #9CA3AF; }
    .header-brand-slogan { font-weight: 600; letter-spacing: 0.5px; }
    .header-top-links { display: flex; gap: 20px; align-items: center; position: relative; }
    .header-top-links button { background: none; border: none; color: #D1D5DB; font-size: 12px; cursor: pointer; padding: 0; font-weight: 500; transition: color 0.2s; }
    .header-top-links button:hover { color: #FFF; }
    .history-dropdown-wrap { position: relative; }
    .history-dropdown-menu { position: absolute; top: calc(100% + 10px); right: 0; width: min(460px, 82vw); max-height: 70vh; overflow: auto; background: #FFF; border: 1px solid rgba(148,163,184,0.28); border-radius: 16px; box-shadow: 0 20px 38px rgba(15,23,42,0.22); padding: 12px; display: none; z-index: 240; }
    .history-dropdown-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding: 6px 6px 12px 6px; border-bottom:1px solid #E2E8F0; margin-bottom:10px; }
    .history-dropdown-title { font-size: 14px; font-weight: 900; color:#0F172A; }
    .history-dropdown-sub { font-size: 12px; color:#64748B; margin-top: 2px; }
    .history-dropdown-list { display:flex; flex-direction:column; gap:8px; }
    .history-dropdown-item { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px 12px; border:1px solid #E2E8F0; border-radius:12px; background:#F8FAFC; }
    .history-dropdown-main { min-width:0; flex:1 1 auto; cursor:pointer; }
    .history-dropdown-name { font-size:13px; font-weight:800; color:#0F172A; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .history-dropdown-meta { font-size:11px; color:#64748B; margin-top:4px; }
    .history-dropdown-empty { padding: 16px 12px; color:#64748B; font-size:12px; text-align:center; }
    .history-dropdown-close { color:#64748B !important; }

    .header-main-bar { max-width: 1400px; margin: 0 auto; padding: 18px 24px; display: flex; align-items: center; justify-content: space-between; gap: 26px; }
    .header-left { display: flex; align-items: center; gap: 24px; min-width: 0; flex: 1 1 auto; }
    
    /* Logo Design - Elegant & Professional */
    .header-logo { color: #FFF; font-size: 21px; font-weight: 800; letter-spacing: 0.5px; display: flex; align-items: center; gap: 12px; cursor: pointer; transition: opacity 0.2s; }
    .header-logo:hover { opacity: 0.9; }
    .logo-mark { width: 34px; height: 34px; position: relative; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--brand), #3B82F6); border-radius: 8px; box-shadow: 0 2px 10px rgba(37, 99, 235, 0.5); }
    .logo-mark::before { content: 'S'; color: #FFF; font-size: 20px; font-weight: 900; font-style: italic; }
    .logo-text-wrapper { display: flex; flex-direction: column; justify-content: center; }
    .logo-title { font-size: 20px; line-height: 1.1; margin-bottom: 2px; }
    .logo-subtitle { font-size: 10px; color: #9CA3AF; letter-spacing: 0.6px; font-weight: 700; line-height: 1.2; }
    .logo-text-highlight { color: #60A5FA; font-weight: 900; }
    
    .nav-menu { display: flex; align-items: center; gap: 14px; padding: 0; background: transparent; border: none; border-radius: 0; overflow-x: auto; scrollbar-width: none; flex: 1 1 auto; min-width: 0; }
    .nav-menu::-webkit-scrollbar { display: none; }
    .nav-item { color: #D1D5DB; font-weight: 800; font-size: 17px; min-height: auto; display: inline-flex; align-items: center; justify-content:center; padding: 0; border-radius: 0; transition: all 0.2s; border: none; background: transparent; white-space: nowrap; flex: 0 0 auto; position: relative; }
    .nav-item:hover { color: #FFF; background: transparent; }
    .nav-item.active { color: #FFF; background: transparent; }
    .nav-item.active::after { content: ''; position: absolute; left: 0; right: 0; bottom: -10px; height: 3px; border-radius: 999px; background: var(--brand); }
    button.nav-item, button.news-card, button.topic-card, button.leaderboard-item { border: none; padding: 0; font: inherit; text-align: left; cursor: pointer; }
    
    .header-right { display: flex; align-items: center; gap: 10px; min-width: 0; flex: 0 0 auto; flex-wrap: wrap; justify-content: flex-end; }
    .header-search-wrap { display: flex; align-items: center; position: relative; }
    .search-icon { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); font-size: 14px; pointer-events: none; opacity: 0.6; }
    .search-box { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); color: #FFF; padding: 9px 16px 9px 38px; border-radius: 20px; width: 214px; font-size: 13px; transition: all 0.2s; outline: none; }
    .search-box:focus { width: 256px; background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.3); }
    .search-box::placeholder { color: rgba(255,255,255,0.4); }
    .lang-toggle { min-width: 58px; }
    
    .btn-primary-action { background: linear-gradient(135deg, #1D4ED8 0%, #2563EB 50%, #38BDF8 100%); color: #FFF; border: 1px solid rgba(255,255,255,0.18); padding: 11px 24px; border-radius: 999px; font-weight: 900; font-size: 14px; letter-spacing: 0.02em; cursor: pointer; transition: transform 0.2s, box-shadow 0.2s, filter 0.2s; box-shadow: 0 10px 24px rgba(29, 78, 216, 0.28); animation: pulse-primary 2s infinite; }
    @keyframes pulse-primary { 0% { box-shadow: 0 0 0 0 rgba(29, 78, 216, 0.6); } 70% { box-shadow: 0 0 0 12px rgba(29, 78, 216, 0); } 100% { box-shadow: 0 0 0 0 rgba(29, 78, 216, 0); } }
    .btn-primary-action:hover { transform: translateY(-1px); filter: saturate(1.05); box-shadow: 0 14px 30px rgba(29, 78, 216, 0.34); }
    .btn-secondary-action { background: rgba(255,255,255,0.08); color: #FFF; border: none; padding: 9px 16px; border-radius: 20px; font-weight: 600; font-size: 13px; cursor: pointer; transition: background 0.2s, border-color 0.2s, color 0.2s, box-shadow 0.2s, transform 0.2s; }
    .btn-secondary-action:hover { background: rgba(255,255,255,0.15); }
    .btn-secondary-action.active { background:#FFF; color:#0B1221; }
    #openJerseysBtn, #openRosterReleaseBtn, #openDatabaseBtn { min-height: 40px; padding: 0 17px; border: 1px solid rgba(96, 165, 250, 0.42); background: linear-gradient(135deg, rgba(37, 99, 235, 0.30), rgba(14, 165, 233, 0.20)); color: #EFF6FF; font-weight: 900; box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 8px 18px rgba(29,78,216,0.16); }
    #openJerseysBtn:hover, #openRosterReleaseBtn:hover, #openDatabaseBtn:hover { transform: translateY(-1px); border-color: rgba(147, 197, 253, 0.78); background: linear-gradient(135deg, rgba(37, 99, 235, 0.48), rgba(14, 165, 233, 0.32)); box-shadow: 0 12px 24px rgba(29,78,216,0.22); }
    #openJerseysBtn.active, #openRosterReleaseBtn.active, #openDatabaseBtn.active { background: #FFFFFF; color: #0B1221; border-color: #93C5FD; box-shadow: 0 0 0 4px rgba(59,130,246,0.18), 0 12px 26px rgba(37,99,235,0.28); }
     .btn-tools { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; background: linear-gradient(135deg, #1D4ED8, #2563EB); color:#FFF; border:none; padding: 0 18px; border-radius: 12px; font-weight: 700; font-size: 13px; transition: transform 0.2s, box-shadow 0.2s, background 0.2s; box-shadow: 0 10px 18px rgba(37,99,235,0.16); }
     .btn-tools:hover { transform: translateY(-1px); box-shadow: 0 14px 24px rgba(37,99,235,0.2); background: linear-gradient(135deg, #2563EB, #1D4ED8); }
     .btn-tools.secondary { background:#E2E8F0; color:#0F172A; box-shadow:none; }
     .btn-tools.secondary:hover { background:#CBD5E1; }
     .btn-tools.is-loading { position: relative; overflow: hidden; transform: translateY(-1px); box-shadow: 0 16px 28px rgba(37,99,235,0.26); background: #2563EB; pointer-events: none; }
    .btn-tools.is-loading::before { content: ""; position: absolute; top: 0; left: 0; bottom: 0; width: var(--progress, 0%); background: rgba(255,255,255,0.25); transition: width 0.2s ease; z-index: 1; }
    .btn-tools.is-loading span { position: relative; z-index: 2; display: flex; align-items: center; gap: 6px; }
    .btn-tools.is-loading span::after { content: ""; width: 14px; height: 14px; border-radius: 999px; border: 2px solid rgba(255,255,255,0.5); border-top-color: #FFF; animation: v7Spin 0.85s linear infinite; }
     @keyframes v7Spin { to { transform: rotate(360deg); } }

    .btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; border:none; padding: 0 18px; border-radius: 12px; font-weight: 700; font-size: 13px; transition: transform 0.2s, box-shadow 0.2s, background 0.2s; }
    .btn-primary { background: linear-gradient(135deg, #1D4ED8, #2563EB); color:#FFF; box-shadow: 0 10px 18px rgba(37,99,235,0.16); }
    .btn-primary:hover { transform: translateY(-1px); box-shadow: 0 14px 24px rgba(37,99,235,0.2); background: linear-gradient(135deg, #2563EB, #1D4ED8); }
    .btn-secondary { background:#E2E8F0; color:#0F172A; box-shadow:none; }
    .btn-secondary:hover { background:#CBD5E1; }
    .form-input { width:100%; border:1px solid var(--border); border-radius:10px; padding:10px 12px; font-size:13px; color:#0F172A; background:#FFF; }
    .form-input:focus { outline: none; border-color: rgba(37,99,235,0.45); box-shadow: 0 0 0 3px rgba(37,99,235,0.12); }

    /* Main Container */
    .portal-main { max-width: 1400px; margin: 32px auto; padding: 0 24px; }
    .search-results-panel { display:none; margin: 18px 0 26px 0; padding: 18px 20px; border: 1px solid var(--border); border-radius: 18px; background: #FFF; box-shadow: var(--shadow-soft); }
    .search-results-list { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
    .search-result-item { display:flex; flex-direction:column; gap:8px; padding:16px 18px; border:1px solid #DBE4F0; border-radius: 16px; background:#F8FBFF; cursor:pointer; transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s; }
    .search-result-item:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(15,23,42,0.08); border-color: #93C5FD; }
    .search-result-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
    .search-result-kind { display:inline-flex; align-items:center; min-height: 24px; padding: 0 10px; border-radius: 999px; background:#DBEAFE; color:#1D4ED8; font-size:12px; font-weight:800; }
    .search-result-name { font-size:18px; font-weight:800; color:#0F172A; }
    .search-result-meta { color:#475569; font-size:13px; line-height:1.6; }
    .search-result-desc { color:#64748B; font-size:12px; line-height:1.7; min-height: 34px; }
    .history-task-item { display:flex; align-items:center; justify-content:space-between; gap:10px; }
    .history-task-main { min-width:0; display:flex; align-items:center; gap:10px; flex:1 1 auto; }
    .history-task-text { min-width:0; display:flex; align-items:center; gap:10px; flex:1 1 auto; }
    .history-item-actions { display:flex; gap:8px; flex:0 0 auto; }
    .history-mini-btn { min-height:28px; padding:0 10px; border-radius:999px; border:1px solid #CBD5E1; background:#FFF; color:#334155; font-size:12px; font-weight:700; cursor:pointer; }
    .history-mini-btn:hover { background:#EFF6FF; border-color:#93C5FD; color:#1D4ED8; }
    .history-mini-btn.danger:hover { background:#FEF2F2; border-color:#FCA5A5; color:#B91C1C; }

    /* News Grid (1 Big + 4 Small) */
    .news-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 220px); gap: 16px; margin-bottom: 32px; }
    .news-card { position: relative; border-radius: 12px; overflow: hidden; background: #000; display: block; group; cursor: pointer; width: 100%; }
    .news-card img { width: 100%; height: 100%; object-fit: cover; opacity: 0.8; transition: transform 0.4s ease; }
    .news-card:hover img { transform: scale(1.05); opacity: 0.9; }
    .news-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.2) 50%, rgba(0,0,0,0) 100%); }
    .news-card-content { position: absolute; bottom: 0; left: 0; right: 0; padding: 20px; z-index: 2; }
    .news-tag { display: inline-block; background: var(--accent-red); color: #FFF; font-size: 11px; font-weight: 700; padding: 4px 8px; border-radius: 4px; margin-bottom: 8px; }
    .news-title { color: #FFF; margin: 0 0 6px 0; font-weight: 800; line-height: 1.3; }
    .news-meta { color: #D1D5DB; font-size: 12px; display: flex; gap: 12px; align-items: center; }

    .news-card.featured { grid-column: 1 / 3; grid-row: 1 / 3; }
    .news-card.featured .news-title { font-size: 28px; }
    .news-card.standard .news-title { font-size: 16px; }
    .news-card.standard .news-card-content { padding: 16px; }

    .worldcup-latest-panel { background: var(--card-bg); border: 1px solid var(--border); border-radius: 12px; padding: 22px 24px; margin: -8px 0 32px 0; box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
    .worldcup-latest-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
    .worldcup-latest-item { display: flex; flex-direction: column; gap: 9px; min-height: 164px; padding: 16px; border: 1px solid #DBE4F0; border-radius: 10px; background: #F8FBFF; transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s; }
    .worldcup-latest-item:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(15,23,42,0.08); border-color: #93C5FD; }
    .worldcup-latest-top { display: flex; justify-content: flex-end; gap: 12px; align-items: flex-start; }
    .worldcup-latest-time { color: var(--text-muted); font-size: 12px; white-space: nowrap; }
    .worldcup-latest-title { margin: 0; color: #0F172A; font-size: 16px; line-height: 1.4; font-weight: 900; }
    .worldcup-latest-summary { margin: 0; color: #475569; font-size: 13px; line-height: 1.65; flex: 1 1 auto; }
    .worldcup-latest-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
    .worldcup-latest-tag { display: inline-flex; align-items: center; min-height: 22px; padding: 0 8px; border-radius: 999px; background: #DBEAFE; color: #1D4ED8; font-size: 11px; font-weight: 800; }
    .worldcup-latest-link { color: var(--brand); font-size: 13px; font-weight: 800; align-self: flex-start; }
    .worldcup-latest-link:hover { text-decoration: underline; }
    .worldcup-latest-empty { display: flex; min-height: 86px; align-items: center; justify-content: center; text-align: center; border: 1px dashed var(--border); border-radius: 10px; background: #F8FAFC; color: var(--text-sub); padding: 18px; font-size: 13px; }

    /* Big Five latest news: one feature story with three concise updates. */
    #worldcupLatestNewsTitle { align-items:center; gap:16px; }
    .big5-news-heading-main { min-width:0; display:flex; align-items:center; gap:16px; flex:1 1 auto; }
    .big5-news-heading-main > #homeLatestNewsHeading { flex:0 0 auto; color:#111827; font-size:22px; font-weight:900; white-space:nowrap; }
    .big5-news-tabs { min-width:0; flex:1 1 auto; }
    .big5-news-heading-controls { min-width:0; display:flex; align-items:center; justify-content:flex-end; gap:10px; flex:0 1 auto; }
    .big5-news-heading-controls #worldcupLatestNewsStatus { white-space:nowrap; }
    .big5-news-pager { display:flex; align-items:center; gap:6px; flex:0 0 auto; }
    .big5-news-page-button { width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:1px solid #D8E1EE; border-radius:9px; background:#FFF; color:#334155; font-size:18px; line-height:1; font-weight:700; cursor:pointer; transition:background .18s, border-color .18s, color .18s, transform .18s; }
    .big5-news-page-button:hover:not(:disabled) { border-color:#93C5FD; background:#EFF6FF; color:#1D4ED8; transform:translateY(-1px); }
    .big5-news-page-button:disabled { opacity:.42; cursor:not-allowed; }
    .big5-news-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); grid-template-rows:360px; align-items:stretch; gap:16px; }
    .big5-news-layout.has-feature-only { grid-template-columns:minmax(0,1fr); }
    .big5-news-feature-card { position:relative; min-width:0; min-height:0; height:100%; overflow:hidden; border:1px solid #D9E3F0; border-radius:11px; background:#0F172A; box-shadow:0 8px 22px rgba(15,23,42,.08); }
    .big5-news-feature-card-link { position:absolute; inset:0; z-index:1; display:block; color:#FFF; text-decoration:none; }
    .big5-news-feature-image { position:absolute; inset:0; overflow:hidden; background:#EAF1FA; }
    .big5-news-feature-image img { width:100%; height:100%; display:block; object-fit:cover; object-position:center 28%; transition:transform .25s ease; }
    .big5-news-feature-card:hover .big5-news-feature-image img { transform:scale(1.025); }
    .big5-news-feature-image.is-image-unavailable { background:linear-gradient(135deg,#DCE8F7,#F8FAFC); }
    .big5-news-feature-image.is-image-unavailable img { visibility:hidden; }
    .big5-news-feature-scrim { position:absolute; inset:0; background:linear-gradient(to top,rgba(2,6,23,.94) 0%,rgba(2,6,23,.64) 38%,rgba(2,6,23,.1) 76%,rgba(2,6,23,.02) 100%); pointer-events:none; }
    .big5-news-feature-content { position:absolute; inset:0; z-index:2; padding:16px 18px; display:flex; flex-direction:column; justify-content:space-between; gap:16px; color:#FFF; pointer-events:none; }
    .big5-news-feature-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; color:#DBEAFE; font-size:12px; font-weight:800; }
    .big5-news-feature-label { display:inline-flex; align-items:center; min-height:25px; padding:0 9px; border-radius:6px; background:#2563EB; color:#FFF; box-shadow:0 4px 10px rgba(30,64,175,.25); }
    .big5-news-feature-top time { padding-top:4px; color:#E2E8F0; white-space:nowrap; }
    .big5-news-feature-bottom { display:grid; gap:9px; }
    .big5-news-feature-bottom h3 { margin:0; color:#FFF; font-size:23px; font-weight:900; line-height:1.28; letter-spacing:-.01em; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .big5-news-feature-bottom p { margin:0; color:#E2E8F0; font-size:13px; line-height:1.68; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
    .big5-news-feature-footer { min-height:24px; display:flex; align-items:flex-end; justify-content:space-between; gap:10px; }
    .big5-news-feature-footer .worldcup-latest-tags { min-width:0; flex:1 1 auto; }
    .big5-news-feature-footer .worldcup-latest-tag { background:rgba(219,234,254,.2); border:1px solid rgba(219,234,254,.22); color:#DBEAFE; }
    .big5-news-source-link { display:inline-flex; align-items:center; gap:4px; color:#2563EB; font-size:12px; font-weight:900; white-space:nowrap; text-decoration:none; }
    .big5-news-source-link:hover { color:#1D4ED8; text-decoration:underline; }
    .big5-news-feature-card .big5-news-source-link { position:relative; z-index:3; color:#FFF; pointer-events:auto; }
    .big5-news-feature-card .big5-news-source-link:hover { color:#DBEAFE; }
    .big5-news-quick-list { min-width:0; min-height:0; height:100%; align-self:stretch; display:grid; grid-template-rows:repeat(3,minmax(0,1fr)); gap:10px; }
    .big5-news-quick-item { min-width:0; min-height:0; display:grid; grid-template-columns:minmax(106px,34%) minmax(0,1fr); overflow:hidden; border:1px solid #DCE5F0; border-radius:10px; background:#FFF; box-shadow:0 4px 12px rgba(15,23,42,.04); transition:border-color .18s, box-shadow .18s, transform .18s; }
    .big5-news-quick-item:hover { border-color:#93C5FD; box-shadow:0 9px 20px rgba(15,23,42,.08); transform:translateY(-1px); }
    .big5-news-quick-image { min-width:0; overflow:hidden; background:#EAF1FA; }
    .big5-news-quick-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 28%; }
    .big5-news-quick-image.is-image-unavailable { background:linear-gradient(135deg,#DCE8F7,#F8FAFC); }
    .big5-news-quick-image.is-image-unavailable img { visibility:hidden; }
    .big5-news-quick-body { min-width:0; min-height:0; padding:11px 13px; display:grid; grid-template-rows:auto minmax(0,1fr) minmax(0,1fr) minmax(22px,auto); gap:5px; }
    .big5-news-quick-meta { color:#94A3B8; font-size:11px; line-height:1.25; font-weight:800; white-space:nowrap; }
    .big5-news-quick-title { min-width:0; min-height:0; margin:0; color:#0F172A; font-size:14px; line-height:1.35; font-weight:900; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .big5-news-quick-title a { color:inherit; text-decoration:none; }
    .big5-news-quick-title a:hover { color:#1D4ED8; }
    .big5-news-quick-summary { min-width:0; min-height:0; margin:0; color:#64748B; font-size:12px; line-height:1.48; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .big5-news-quick-footer { min-width:0; min-height:22px; margin-top:0; display:flex; align-items:flex-end; justify-content:space-between; gap:8px; }
    .big5-news-quick-footer .worldcup-latest-tags { min-width:0; flex:1 1 auto; flex-wrap:nowrap; overflow:hidden; }
    .big5-news-quick-footer .worldcup-latest-tag { flex:0 0 auto; }

    /* Independent Big Five score card. It intentionally does not share news-card styles. */
    .big5-score-panel { margin:0 0 24px; padding:14px 16px 16px; border:1px solid #D8E4F2; border-radius:12px; background:linear-gradient(135deg,#F8FBFF 0%,#FFF 62%); box-shadow:0 5px 16px rgba(15,23,42,.05); }
    .big5-score-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:11px; }
    .big5-score-heading h2 { margin:0; color:#111827; font-size:21px; line-height:1.25; font-weight:900; }
    .big5-score-heading p { margin:3px 0 0; color:#64748B; font-size:13px; font-weight:700; }
    .big5-score-source { flex:0 0 auto; padding:4px 8px; border-radius:999px; background:#E0ECFF; color:#1D4ED8; font-size:12px; font-weight:900; }
    .big5-score-notice { margin:0 0 10px; color:#8A5A00; font-size:12px; line-height:1.5; }
    .big5-score-list { display:flex; flex-wrap:nowrap; align-items:flex-start; gap:12px; overflow-x:auto; overflow-y:hidden; padding:0 1px 2px; scrollbar-width:thin; }
    .big5-score-list:focus { outline:2px solid #93C5FD; outline-offset:2px; }
    .big5-score-match { box-sizing:border-box; flex:0 0 222px; width:222px; min-width:222px; padding:10px 11px; border:1px solid #E1E9F3; border-radius:10px; background:#FFF; }
    .big5-score-match-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; margin-bottom:8px; }
    .big5-score-league { overflow:hidden; color:#334155; font-size:12px; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }
    .big5-score-status { flex:0 0 auto; padding:3px 7px; border-radius:999px; background:#EFF6FF; color:#2563EB; font-size:11px; font-weight:900; }
    .big5-score-status.live { background:#DCFCE7; color:#15803D; }
    .big5-score-status.paused, .big5-score-status.exception { background:#FEF3C7; color:#92400E; }
    .big5-score-status.finished { background:#E2E8F0; color:#475569; }
    .big5-score-match-main { display:grid; grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr); align-items:start; gap:8px; }
    .big5-score-team { min-width:0; display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; }
    .big5-score-team-away { justify-content:flex-start; text-align:center; }
    .big5-score-crest { width:40px; height:40px; flex:0 0 40px; display:inline-flex; align-items:center; justify-content:center; overflow:hidden; border-radius:50%; background:#EEF2F7; color:#64748B; font-size:14px; font-style:normal; font-weight:900; }
    .big5-score-crest img { display:block; width:100%; height:100%; object-fit:contain; }
    .big5-score-crest i { width:100%; height:100%; display:inline-flex; align-items:center; justify-content:center; font-style:normal; }
    .big5-score-team-name { min-width:0; min-height:32px; overflow:hidden; color:#0F172A; font-size:13px; font-weight:800; line-height:1.25; text-align:center; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; text-overflow:ellipsis; word-break:break-word; }
    .big5-score-result { min-width:0; padding-top:8px; text-align:center; }
    .big5-score-result strong { display:block; min-height:23px; color:#0F172A; font-size:20px; line-height:1.15; font-variant-numeric:tabular-nums; white-space:nowrap; }
    .big5-score-result span { display:block; min-height:16px; margin-top:3px; color:#64748B; font-size:11px; font-weight:800; white-space:nowrap; }
    .big5-score-empty { display:flex; min-height:80px; align-items:center; justify-content:center; padding:14px; border:1px dashed #C9D8E8; border-radius:10px; color:#64748B; background:#FFF; font-size:13px; font-weight:700; text-align:center; }

    @media (max-width:1024px) {
      #worldcupLatestNewsTitle { align-items:flex-start; flex-wrap:wrap; }
      .big5-news-heading-main { flex:1 1 100%; }
      .big5-news-heading-controls { width:100%; }
      .big5-news-layout { grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:340px; min-height:0; }
      .big5-news-feature-bottom h3 { font-size:20px; }
      .big5-news-feature-bottom p { -webkit-line-clamp:2; }
      .big5-news-quick-body { padding:9px 10px; }
      .big5-news-quick-summary { -webkit-line-clamp:1; }
    }

    @media (max-width:900px) {
      .big5-news-layout { grid-template-columns:minmax(0,1fr); grid-template-rows:none; height:auto; min-height:0; }
      .big5-news-feature-card { width:100%; max-width:100%; height:auto; aspect-ratio:16 / 9; min-height:320px; }
      .big5-news-quick-list { height:auto; grid-template-rows:none; grid-auto-rows:minmax(126px,auto); }
      .big5-news-quick-summary { -webkit-line-clamp:2; }
    }

    @media (max-width:768px) {
      .worldcup-latest-panel { padding:18px 16px; }
      .big5-news-heading-main { align-items:flex-start; flex-direction:column; gap:10px; }
      .big5-news-tabs { width:100%; flex-wrap:nowrap; overflow-x:auto; padding-bottom:5px; }
      .big5-news-heading-controls { align-items:center; }
      .big5-news-heading-controls #worldcupLatestNewsStatus { min-width:0; overflow:hidden; text-overflow:ellipsis; }
      .big5-news-layout { gap:12px; }
      .big5-news-feature-card { min-height:278px; }
      .big5-news-feature-content { padding:14px; }
      .big5-news-feature-bottom h3 { font-size:19px; }
      .big5-news-feature-bottom p { font-size:12px; line-height:1.55; }
      .big5-news-quick-list { gap:8px; }
      .big5-news-quick-item { grid-template-columns:minmax(100px,34%) minmax(0,1fr); }
      .big5-news-quick-body { padding:9px 10px; }
      .big5-news-quick-summary { -webkit-line-clamp:2; }
      .big5-score-panel { padding:14px 16px 16px; margin-bottom:20px; }
      .big5-score-heading { gap:10px; }
      .big5-score-heading h2 { font-size:19px; }
      .big5-score-list { gap:12px; }
      .big5-score-match { flex-basis:208px; width:208px; min-width:208px; }
      .big5-score-match-main { grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr); gap:6px; }
      .big5-score-crest { width:36px; height:36px; flex-basis:36px; }
      .big5-score-team-name { font-size:12px; }
    }

    /* Two Column Layout */
    .layout-columns { display: grid; grid-template-columns: 3fr 1fr; gap: 24px; align-items: start; }

    /* Section Headers */
    .section-title { font-size: 22px; font-weight: 900; color: #111827; margin: 0 0 20px 0; padding-bottom: 12px; border-bottom: 2px solid #E5E7EB; display: flex; justify-content: space-between; align-items: flex-end; position: relative; }
    .section-title::after { content: ''; position: absolute; left: 0; bottom: -2px; width: 60px; height: 2px; background: var(--brand); }
    .section-title span { font-size: 13px; color: var(--text-sub); font-weight: 500; }

    /* Data Table (Intelligence) */
    .data-panel { background: var(--card-bg); border-radius: 12px; padding: 24px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); margin-bottom: 24px; border: 1px solid var(--border); }
    .filter-panel { background: var(--card-bg); border-radius: 12px; padding: 20px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); border: 1px solid var(--border); margin-bottom: 18px; }
    .filter-panel h4 { margin: 0; font-size: 16px; font-weight: 900; color: #111827; }
    .filter-panel label { font-size: 13px; color: var(--text-sub); font-weight: 600; }
    .filter-panel input[type="checkbox"] { transform: translateY(1px); }
    .modal-overlay { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.55); display: flex; align-items: center; justify-content: center; padding: 22px; z-index: 200; }
    .modal { width: 100%; background: #FFF; border-radius: 14px; overflow: hidden; border: 1px solid rgba(148, 163, 184, 0.45); box-shadow: 0 24px 60px rgba(15, 23, 42, 0.3); }
    .modal-header { display:flex; justify-content:space-between; align-items:center; padding: 14px 16px; border-bottom: 1px solid var(--border); background: #F8FAFC; }
    .modal-body { padding: 16px; }
    .modal-footer { padding: 14px 16px; border-top: 1px solid var(--border); display:flex; justify-content:flex-end; gap:10px; background: #F8FAFC; }
    .pct-progress { display:flex; flex-direction:column; gap:6px; align-items:stretch; width:100%; max-width: 200px; }
    .pct-progress-bar { height: 8px; background: #E2E8F0; border-radius: 999px; overflow: hidden; }
    .pct-progress-fill { display:block; height:100%; width:0%; background: linear-gradient(90deg, #1D4ED8, #38BDF8); transition: width 0.25s ease; }
    .pct-progress-text { font-size: 12px; color: var(--text-sub); text-align: center; font-weight: 700; }
    .data-table-wrapper { overflow-x: auto; }
    .data-table { width: 100%; border-collapse: collapse; text-align: left; }
    .data-table th { font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.5px; color: #4B5563; padding: 14px 12px; border-bottom: 2px solid #E5E7EB; background: #F9FAFB; white-space: nowrap; }
    .data-table td { padding: 18px 12px; border-bottom: 1px solid var(--border); font-size: 14px; vertical-align: middle; color: var(--text-main); }
    .data-table tr:last-child td { border-bottom: none; }
    .data-table tr:hover td { background-color: #F8FAFC; }
    
    .team-cell { display: flex; align-items: center; gap: 10px; font-weight: 700; color: var(--text-main); }
    .team-icon { width: 24px; height: 24px; background: var(--bg); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 10px; color: var(--text-muted); border: 1px solid var(--border); }
    .status-dot { display: inline-block; width: 8px; height: 8px; background: var(--brand); border-radius: 50%; margin-right: 6px; }
    .status-dot.active { background: #10B981; }

    .btn-link { color: var(--brand); font-weight: 600; font-size: 13px; border: none; background: none; padding: 0; text-decoration: none; }
    .btn-link:hover { text-decoration: underline; }

    /* Side Widgets (Leaderboards) */
    .widget { background: var(--card-bg); border-radius: 12px; padding: 24px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); margin-bottom: 24px; border: 1px solid var(--border); }
    .widget-title { font-size: 18px; font-weight: 900; color: #111827; margin: 0 0 20px 0; padding-bottom: 12px; border-bottom: 1px solid #E5E7EB; position: relative; }
    .widget-title::after { content: ''; position: absolute; left: 0; bottom: -1px; width: 40px; height: 2px; background: var(--brand); }
    
    .leaderboard-list { display: flex; flex-direction: column; gap: 12px; }
    .leaderboard-item { display: flex; align-items: center; justify-content: space-between; font-size: 14px; padding-bottom: 12px; border-bottom: 1px dashed var(--border); width: 100%; }
    .leaderboard-item:last-child { border-bottom: none; padding-bottom: 0; }
    .leader-rank { font-weight: 900; color: var(--text-muted); width: 20px; }
    .leader-rank.top-3 { color: var(--accent-red); }
    .leader-name { flex: 1; font-weight: 600; color: var(--text-main); }
    .leader-meta { font-size: 12px; color: var(--text-sub); }
    .leaderboard-tabs { display:grid; grid-template-columns: repeat(auto-fit, minmax(104px, 1fr)); gap:8px; margin:-8px 0 14px 0; }
    .leaderboard-tab { border:1px solid var(--border); background:#F8FAFC; color:#334155; padding:9px 10px; border-radius:12px; font-size:12px; font-weight:800; text-align:center; min-height:40px; line-height:1.35; white-space:normal; }
    .leaderboard-tab.active { background:#1D4ED8; color:#FFF; border-color:#1D4ED8; }

    /* Topics Grid */
    .topics-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
    .topic-card { display: flex; gap: 16px; background: var(--card-bg); padding: 16px; border-radius: 12px; border: 1px solid var(--border); transition: all 0.2s; width: 100%; align-items: center; }
    .topic-card:hover { box-shadow: 0 8px 16px rgba(0,0,0,0.08); transform: translateY(-2px); border-color: #D1D5DB; }
    .topic-img { width: 100px; height: 75px; border-radius: 8px; object-fit: cover; flex-shrink: 0; }
    .topic-info { display: flex; flex-direction: column; justify-content: center; }
    .topic-title { font-size: 15px; font-weight: 800; margin: 0 0 4px 0; }
    .topic-desc { font-size: 12px; color: var(--text-sub); margin: 0; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .route-page { display: none; }
    .route-page.active { display: block; }

    /* Kit Leak Panorama */
    .kit-panorama-page { display: grid; gap: 18px; background: #FFFFFF; min-width: 0; }
    .kit-panorama-page > * { min-width: 0; }
    .kit-panorama-page .intel-panel-head { align-items: flex-start; margin-bottom: 12px; }
    .kit-panorama-page .intel-panel-title { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; line-height: 1.25; letter-spacing: 0; }
    .kit-auto-pill { display: inline-flex; align-items: center; min-height: 26px; padding: 0 10px; border-radius: 999px; background: #EFF6FF; color: #1D4ED8; border: 1px solid #BFDBFE; font-size: 12px; font-weight: 900; }
    .kit-meta-line { display: flex; align-items: center; gap: 8px 16px; flex-wrap: wrap; line-height: 1.7; }
    .kit-meta-line span { color: #475569; font-size: 13px; font-weight: 700; }
    .kit-metric-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
    .kit-metric-card { border: 1px solid #DDE6F2; border-radius: 10px; background: #F8FAFC; padding: 14px 16px; min-height: 78px; display: flex; flex-direction: column; justify-content: center; gap: 6px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04); }
    .kit-metric-card span { color: #64748B; font-size: 12px; font-weight: 900; }
    .kit-metric-card strong { color: #0F172A; font-size: 18px; line-height: 1.25; overflow-wrap: anywhere; }
    .kit-route-stack { display: grid; gap: 22px; min-width: 0; }
    .kit-section { display: grid; gap: 12px; min-width: 0; }
    .kit-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 10px; border-bottom: 1px solid #E2E8F0; }
    .kit-section-head h3 { margin: 0; color: #0F172A; font-size: 18px; font-weight: 900; line-height: 1.3; }
    .kit-section-head span { display: inline-flex; align-items: center; min-height: 24px; padding: 0 10px; border-radius: 999px; background: #FEF3C7; color: #92400E; font-size: 12px; font-weight: 900; white-space: nowrap; }
    .kit-section-desc { margin: 0; color: #64748B; font-size: 13px; line-height: 1.7; }
    .kit-overview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
    .kit-league-card { --kit-accent: #2563EB; border: 1px solid #DDE6F2; border-radius: 10px; background: #FFFFFF; padding: 16px; display: grid; align-content: start; gap: 12px; min-width: 0; box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06); }
    .kit-league-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
    .kit-league-name { display: grid; gap: 3px; min-width: 0; }
    .kit-league-name strong { color: #0F172A; font-size: 16px; font-weight: 900; line-height: 1.25; }
    .kit-league-name span { color: #64748B; font-size: 10px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
    .kit-league-marker { width: 28px; height: 28px; border-radius: 8px; background: color-mix(in srgb, var(--kit-accent) 13%, #FFFFFF); border: 1px solid color-mix(in srgb, var(--kit-accent) 26%, #DDE6F2); position: relative; flex: 0 0 auto; }
    .kit-league-marker::after { content: ''; position: absolute; inset: 8px; border-radius: 999px; background: var(--kit-accent); }
    .kit-league-coverage-block { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 38px; padding: 8px 10px; border: 1px solid #E2E8F0; border-radius: 8px; background: #F8FAFC; min-width: 0; }
    .kit-league-coverage { display: flex; align-items: baseline; gap: 2px; color: #64748B; flex: 0 0 auto; }
    .kit-league-coverage strong { color: #0F172A; font-size: 24px; line-height: 1; font-weight: 900; letter-spacing: 0; }
    .kit-league-coverage span { font-size: 13px; font-weight: 800; }
    .kit-league-coverage-label { color: #64748B; font-size: 11px; line-height: 1.3; font-weight: 800; text-align: right; }
    .kit-progress-track { height: 8px; border-radius: 999px; background: #E8EEF6; overflow: hidden; }
    .kit-progress-track span { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(90deg, #F59E0B, #22C55E); }
    .kit-status-chip-row { display: flex; gap: 6px; flex-wrap: wrap; }
    .kit-status-chip { display: inline-flex; align-items: center; gap: 4px; min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 11px; font-weight: 900; }
    .kit-status-chip.is-released { background: #DCFCE7; color: #166534; }
    .kit-status-chip.is-leaked { background: #FEF3C7; color: #92400E; }
    .kit-status-chip.is-pending { background: #E2E8F0; color: #475569; }
    .kit-status-chip.is-concept { background: #DBEAFE; color: #1D4ED8; }
    .kit-status-chip.is-fake { background: #FEE2E2; color: #991B1B; }
    .kit-status-chip.is-info { background: #FEF3C7; color: #92400E; }
    .kit-tier-chip-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
    .kit-tier-chip { display: inline-flex; align-items: center; justify-content: center; min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 11px; font-weight: 900; border: 1px solid transparent; white-space: nowrap; }
    .kit-tier-chip.is-s { background: #FEE2E2; color: #B91C1C; border-color: #FECACA; }
    .kit-tier-chip.is-a { background: #FEF3C7; color: #B45309; border-color: #FDE68A; }
    .kit-tier-chip.is-b { background: #DBEAFE; color: #1D4ED8; border-color: #BFDBFE; }
    .kit-tier-chip.is-c { background: #E2E8F0; color: #475569; border-color: #CBD5E1; }
    .kit-league-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
    .kit-league-stat { display: grid; justify-items: start; gap: 3px; min-width: 0; padding: 7px 8px; border: 1px solid #E2E8F0; border-radius: 8px; background: #F8FAFC; }
    .kit-league-stat strong { font-size: 17px; font-weight: 900; line-height: 1.05; }
    .kit-league-stat span { color: #64748B; font-size: 10px; line-height: 1.2; font-weight: 800; white-space: nowrap; }
    .kit-league-stat.is-released strong { color: #16A34A; }
    .kit-league-stat.is-leaked strong { color: #D97706; }
    .kit-league-stat.is-pending strong { color: #334155; }
    .kit-recent-list { border: 1px solid #DDE6F2; border-radius: 10px; background: #FFFFFF; overflow: hidden; box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04); }
    .kit-recent-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(92px, auto) minmax(92px, auto); gap: 14px; align-items: center; padding: 14px 16px; border-bottom: 1px solid #E2E8F0; }
    .kit-recent-row:last-child { border-bottom: none; }
    .kit-recent-title { color: #0F172A; font-size: 14px; line-height: 1.45; font-weight: 900; overflow-wrap: anywhere; }
    .kit-recent-meta { margin-top: 5px; color: #64748B; font-size: 12px; line-height: 1.6; }
    .kit-league-panel { border: 1px solid #DDE6F2; border-radius: 10px; background: #FFFFFF; overflow: hidden; box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05); }
    .kit-league-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 18px; background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); border-bottom: 1px solid #E2E8F0; }
    .kit-league-head h3 { margin: 0; font-size: 18px; font-weight: 900; color: #0F172A; line-height: 1.3; }
    .kit-league-head span { color: #64748B; font-size: 12px; font-weight: 900; white-space: nowrap; }
    .kit-team-group-list { display: grid; gap: 0; }
    .kit-team-group-header { display: grid; grid-template-columns: minmax(190px, 0.9fr) minmax(0, 3.1fr); gap: 18px; padding: 11px 18px; background: #F8FAFC; border-bottom: 1px solid #E2E8F0; color: #64748B; font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.06em; }
    .kit-team-group-card { display: grid; grid-template-columns: minmax(190px, 0.9fr) minmax(0, 3.1fr); gap: 18px; padding: 16px 18px; border-bottom: 1px solid #E2E8F0; align-items: start; }
    .kit-team-group-card:last-child { border-bottom: none; }
    .kit-team-summary { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
    .kit-team-summary strong { display: block; color: #0F172A; font-size: 15px; font-weight: 900; line-height: 1.35; overflow-wrap: anywhere; }
    .kit-team-summary span:not(.leader-rank) { display: block; margin-top: 4px; color: #64748B; font-size: 12px; font-weight: 800; }
    .kit-team-detail-list { display: grid; gap: 8px; min-width: 0; overflow-x: auto; }
    .kit-team-detail-header, .kit-team-detail-row { display: grid; grid-template-columns: minmax(92px, 1fr) minmax(86px, 0.9fr) minmax(108px, 1fr) minmax(100px, 1fr) minmax(116px, 1fr) minmax(76px, auto); gap: 10px; align-items: center; }
    .kit-team-detail-header { padding: 0 12px 2px; color: #64748B; font-size: 11px; font-weight: 900; letter-spacing: 0.02em; }
    .kit-team-detail-row { padding: 10px 12px; border: 1px solid #DDE6F2; border-radius: 8px; background: #F8FAFC; font-size: 13px; line-height: 1.45; }
    .kit-type-cell strong { color: #0F172A; font-size: 13px; font-weight: 900; }
    .kit-detail-meta { color: #334155; overflow-wrap: anywhere; }
    .kit-detail-color-head, .kit-detail-color { color: #1F2937; }
    .kit-status-pill { display: inline-flex; align-items: center; min-height: 24px; padding: 0 10px; border-radius: 999px; background: #E2E8F0; color: #475569; font-size: 12px; font-weight: 900; white-space: nowrap; }
    .kit-status-pill.is-released { background: #DCFCE7; color: #166534; }
    .kit-status-pill.is-leaked { background: #FEF3C7; color: #92400E; }
    .kit-status-pill.is-pending { background: #E2E8F0; color: #475569; }
    .kit-status-pill.is-concept { background: #DBEAFE; color: #1D4ED8; }
    .kit-status-pill.is-fake { background: #FEE2E2; color: #991B1B; }
    .kit-status-pill.is-info { background: #FEF3C7; color: #92400E; }
    .kit-status-button { appearance: none; border: 0; background: transparent; padding: 0; margin: 0; display: inline-flex; cursor: pointer; border-radius: 999px; }
    .kit-status-button:hover .kit-status-pill, .kit-status-button:focus-visible .kit-status-pill { box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14); filter: brightness(0.98); }
    .kit-status-button:focus-visible { outline: none; }
    .kit-tier-tabs { display: flex; gap: 8px; flex-wrap: wrap; padding-bottom: 10px; border-bottom: 1px solid #E2E8F0; }
    .kit-tier-tab { display: inline-flex; align-items: center; gap: 8px; min-height: 34px; padding: 0 12px; border-radius: 999px; border: 1px solid #DDE6F2; background: #F8FAFC; color: #334155; font-size: 12px; font-weight: 900; cursor: pointer; transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease; }
    .kit-tier-tab:hover { background: #EFF6FF; border-color: #BFDBFE; color: #1D4ED8; }
    .kit-tier-tab.active { background: #EFF6FF; border-color: #60A5FA; color: #1D4ED8; box-shadow: inset 0 -2px 0 #3B82F6; }
    .kit-tier-tab span, .kit-tier-tab strong { display: inline-flex; align-items: center; white-space: nowrap; }
    .kit-tier-tab strong { min-height: 22px; padding: 0 7px; border-radius: 999px; background: #E2E8F0; color: #475569; font-size: 11px; }
    .kit-tier-tab.active strong { background: #BFDBFE; color: #1E40AF; }
    .kit-tier-active-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; border: 1px solid #DDE6F2; border-radius: 10px; background: #F8FAFC; }
    .kit-tier-active-summary strong { color: #0F172A; font-size: 13px; font-weight: 900; }
    .kit-tier-active-summary span { color: #64748B; font-size: 12px; font-weight: 800; text-align: right; }
    .kit-tier-stack { display: grid; gap: 16px; padding: 16px 18px 18px; background: #FFFFFF; }
    .kit-tier-group { border: 1px solid #DDE6F2; border-radius: 10px; background: #FBFDFF; overflow: hidden; }
    .kit-tier-group-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border-bottom: 1px solid #E2E8F0; background: #F8FAFC; }
    .kit-tier-group-head > div { display: flex; align-items: center; gap: 9px; min-width: 0; }
    .kit-tier-group-head strong { color: #0F172A; font-size: 13px; line-height: 1.4; font-weight: 900; overflow-wrap: anywhere; }
    .kit-tier-group-head > span { color: #64748B; font-size: 12px; font-weight: 900; white-space: nowrap; }
    .kit-tier-tag { display: inline-flex; align-items: center; min-height: 24px; padding: 0 9px; border-radius: 999px; font-size: 12px; font-weight: 900; white-space: nowrap; }
    .kit-tier-tag.is-s { background: #FEE2E2; color: #B91C1C; }
    .kit-tier-tag.is-a { background: #FEF3C7; color: #B45309; }
    .kit-tier-tag.is-b { background: #DBEAFE; color: #1D4ED8; }
    .kit-tier-tag.is-c { background: #E2E8F0; color: #475569; }
    .kit-tier-table-wrap { overflow-x: auto; background: #FFFFFF; }
    .kit-tier-table { width: 100%; min-width: 860px; border-collapse: collapse; }
    .kit-tier-table th, .kit-tier-table td { border-bottom: 1px solid #E2E8F0; border-right: 1px solid #E2E8F0; padding: 10px 12px; text-align: center; vertical-align: middle; }
    .kit-tier-table tr:last-child td { border-bottom: none; }
    .kit-tier-table th:last-child, .kit-tier-table td:last-child { border-right: none; }
    .kit-tier-table th { background: #FFFFFF; color: #64748B; font-size: 11px; font-weight: 900; line-height: 1.25; }
    .kit-tier-team-head { width: 184px; text-align: left !important; position: sticky; left: 0; z-index: 2; background: #FFFFFF !important; }
    .kit-tier-team-cell { width: 184px; text-align: left !important; position: sticky; left: 0; z-index: 1; background: #FFFFFF; }
    .kit-tier-team-cell strong { display: block; color: #0F172A; font-size: 13px; line-height: 1.35; font-weight: 900; overflow-wrap: anywhere; }
    .kit-tier-team-cell span { display: block; margin-top: 3px; color: #64748B; font-size: 11px; line-height: 1.4; font-weight: 800; overflow-wrap: anywhere; }
    .kit-tier-th-cn, .kit-tier-th-en { display: block; }
    .kit-tier-th-cn { color: #0F172A; }
    .kit-tier-th-en { margin-top: 2px; color: #94A3B8; font-size: 10px; text-transform: uppercase; }
    .kit-tier-kit-cell a { display: inline-flex; text-decoration: none; }
    .kit-tier-dash { color: #CBD5E1; font-size: 14px; font-weight: 900; }
    .kit-league-scanner { border-color: #CFE0F4; border-radius: 16px; background: #FFFFFF; box-shadow: 0 16px 34px rgba(15, 23, 42, 0.07); }
    .kit-league-scanner-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid #E2E8F0; background: linear-gradient(135deg, #F8FBFF 0%, #FFFFFF 56%, #EFF6FF 100%); }
    .kit-league-scanner-head h3 { margin: 0 0 5px; color: #0F172A; font-size: 20px; line-height: 1.25; font-weight: 900; }
    .kit-league-scanner-head span { display: block; color: #64748B; font-size: 12px; font-weight: 900; }
    .kit-league-scanner-meter { display: grid; gap: 7px; min-width: 142px; }
    .kit-league-scanner-meter strong { color: #1D4ED8; font-size: 22px; line-height: 1; text-align: right; font-weight: 900; }
    .kit-league-scanner-meter span { display: block; height: 7px; border-radius: 999px; background: #DDE6F2; overflow: hidden; }
    .kit-league-scanner-meter i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #0EA5E9, #22C55E); }
    .kit-tier-scanner-layout { display: grid; grid-template-columns: minmax(136px, 0.42fr) minmax(0, 2fr) minmax(132px, 0.38fr); gap: 14px; padding: 16px; background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); }
    .kit-tier-rail { display: grid; align-self: start; gap: 8px; }
    .kit-tier-rail-item { appearance:none; width:100%; display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 8px; min-width: 0; border: 1px solid #DDE6F2; border-radius: 13px; background: #FFFFFF; padding: 9px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04); font:inherit; text-align:left; cursor:pointer; transition:transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease; }
    .kit-tier-rail-item:hover { transform:translateY(-1px); border-color:#93C5FD; box-shadow:0 12px 22px rgba(37,99,235,0.10); }
    .kit-tier-rail-item:focus-visible { outline:2px solid #60A5FA; outline-offset:2px; }
    .kit-tier-rail-item strong { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 12px; color: #0F172A; font-size: 15px; font-weight: 900; }
    .kit-tier-rail-item strong small { margin-left:1px; font-size:10px; line-height:1; font-weight:900; }
    .kit-tier-rail-item span { min-width: 0; color: #475569; font-size: 11px; line-height: 1.25; font-weight: 900; overflow: hidden; text-overflow: ellipsis; }
    .kit-tier-rail-item em { color: #0F172A; font-size: 14px; font-style: normal; font-weight: 900; }
    .kit-tier-rail-item.is-s strong { background: #FEE2E2; color: #B91C1C; }
    .kit-tier-rail-item.is-a strong { background: #FEF3C7; color: #B45309; }
    .kit-tier-rail-item.is-b strong { background: #DBEAFE; color: #1D4ED8; }
    .kit-tier-rail-item.is-c strong { background: #E2E8F0; color: #475569; }
    .kit-league-scanner .kit-tier-stack { gap: 12px; padding: 0; background: transparent; }
    .kit-tier-band { border: 1px solid #DDE6F2; border-radius: 14px; background: #FFFFFF; overflow: hidden; box-shadow: 0 10px 22px rgba(15, 23, 42, 0.04); }
    .kit-tier-band.is-s { border-left: 4px solid #EF4444; }
    .kit-tier-band.is-a { border-left: 4px solid #F59E0B; }
    .kit-tier-band.is-b { border-left: 4px solid #2563EB; }
    .kit-tier-band.is-c { border-left: 4px solid #64748B; }
    .kit-tier-band .kit-tier-group-head { background: #FFFFFF; padding: 11px 12px; }
    .kit-tier-team-board { display: grid; gap: 8px; padding: 10px; background: #F8FAFC; }
    .kit-tier-team-row { display: grid; grid-template-columns: minmax(150px, 0.36fr) minmax(0, 1fr) minmax(62px, auto); gap: 10px; align-items: stretch; min-width: 0; border: 1px solid #E2E8F0; border-radius: 12px; background: #FFFFFF; padding: 10px; }
    .kit-tier-kit-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(112px, 1fr)); gap: 8px; min-width: 0; }
    .kit-tier-kit-token { display: grid; gap: 7px; align-content: center; min-height: 58px; border: 1px solid #DDE6F2; border-radius: 11px; background: #FBFDFF; padding: 8px; min-width: 0; }
    .kit-tier-kit-token.is-empty { background: #FFFFFF; border-style: dashed; }
    .kit-tier-kit-token.is-released { border-color: #BBF7D0; background: #F0FDF4; }
    .kit-tier-kit-token.is-leaked, .kit-tier-kit-token.is-info { border-color: #FDE68A; background: #FFFBEB; }
    .kit-tier-kit-token.is-concept { border-color: #BFDBFE; background: #EFF6FF; }
    .kit-tier-kit-token.is-fake { border-color: #FECACA; background: #FEF2F2; }
    .kit-tier-kit-label { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; min-width: 0; color: #0F172A; font-size: 12px; font-weight: 900; }
    .kit-tier-kit-label small { color: #94A3B8; font-size: 9px; line-height: 1; font-weight: 900; text-transform: uppercase; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .kit-tier-signal-count { display: grid; align-content: center; justify-items: center; min-width: 60px; border-radius: 11px; background: #EEF4FF; color: #1D4ED8; }
    .kit-tier-signal-count strong { font-size: 18px; line-height: 1; font-weight: 900; }
    .kit-tier-signal-count span { margin-top: 4px; font-size: 10px; line-height: 1; font-weight: 900; }
    .kit-scanner-side { display: grid; align-self: start; gap: 10px; }
    .kit-scanner-side div { border: 1px solid #DDE6F2; border-radius: 14px; background: #FFFFFF; padding: 12px; box-shadow: 0 8px 18px rgba(15, 23, 42, 0.04); }
    .kit-scanner-side span { display: block; color: #64748B; font-size: 11px; font-weight: 900; }
    .kit-scanner-side strong { display: block; margin-top: 5px; color: #0F172A; font-size: 22px; line-height: 1; font-weight: 900; }
    .kit-leak-board { min-width:0; border:1px solid #DDE6F2; border-radius:18px; background:#FFFFFF; padding:26px; box-shadow:0 20px 46px rgba(15,23,42,0.08); }
    .kit-leak-board-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; }
    .kit-leak-board-title { display:flex; align-items:flex-start; gap:18px; min-width:0; }
    .kit-board-jersey-icon { width:68px; height:68px; flex:0 0 auto; filter:drop-shadow(0 10px 16px rgba(37,99,235,0.18)); }
    .kit-leak-board-title h3 { margin:0 0 7px; color:#0F172A; font-size:28px; line-height:1.14; font-weight:900; letter-spacing:0; }
    .kit-leak-board-title span { display:block; color:#64748B; font-size:14px; line-height:1.35; font-weight:900; }
    .kit-leak-view-toggle { display:inline-flex; align-items:center; gap:8px; min-height:42px; border:1px solid #DDE6F2; border-radius:999px; background:#FFFFFF; color:#334155; padding:0 14px; font-size:13px; font-weight:900; box-shadow:0 10px 20px rgba(15,23,42,0.05); white-space:nowrap; }
    .kit-leak-view-toggle span, .kit-leak-view-toggle i { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:8px; background:#EFF6FF; color:#1D4ED8; font-style:normal; }
    .kit-leak-board .kit-status-chip-row { margin-top:4px; gap:12px; }
    .kit-leak-board .kit-status-chip { min-height:32px; gap:8px; padding:0 15px; border:1px solid rgba(15,23,42,0.05); font-size:13px; box-shadow:0 6px 14px rgba(15,23,42,0.03); }
    .kit-leak-board .kit-status-chip::before { content:''; width:10px; height:10px; border-radius:999px; background:currentColor; box-shadow:0 0 0 3px rgba(255,255,255,0.78); }
    .kit-change-filter-row { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
    .kit-change-filter { appearance:none; min-height:34px; border:1px solid #BFDBFE; border-radius:999px; background:#FFFFFF; color:#1E40AF; padding:0 13px; font:inherit; font-size:12px; font-weight:900; cursor:pointer; transition:background .16s ease,border-color .16s ease,box-shadow .16s ease; }
    .kit-change-filter:hover:not(:disabled), .kit-change-filter.active { border-color:#60A5FA; background:#EFF6FF; box-shadow:0 5px 12px rgba(37,99,235,.10); }
    .kit-change-filter:focus-visible { outline:2px solid #60A5FA; outline-offset:2px; }
    .kit-change-filter:disabled, .kit-tier-tab:disabled, .kit-tier-rail-item:disabled { cursor:not-allowed; opacity:.5; }
    .kit-change-badge-row { display:flex; flex-wrap:wrap; gap:4px; }
    .kit-change-badge { display:inline-flex; align-items:center; min-height:18px; border-radius:999px; background:#E0F2FE; color:#075985; padding:0 6px; font-size:10px; line-height:1; font-weight:900; white-space:nowrap; }
    .kit-change-badge.is-new, .kit-change-badge.is-new_kit { background:#DCFCE7; color:#166534; }
    .kit-change-badge.is-status_upgraded { background:#EDE9FE; color:#6D28D9; }
    .kit-change-badge.is-images_added { background:#FEF3C7; color:#92400E; }
    .kit-change-badge.is-source_changed { background:#E0F2FE; color:#075985; }
    .kit-change-badge.is-more { background:#E2E8F0; color:#475569; }
    .kit-dashboard-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px; margin-top:18px; min-width:0; }
    .kit-dashboard-card { min-width:0; border:1px solid #DDE6F2; border-radius:14px; background:#FFFFFF; padding:16px; box-shadow:0 8px 20px rgba(15,23,42,.04); }
    .kit-dashboard-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:13px; }
    .kit-dashboard-card-head h4 { margin:0; color:#0F172A; font-size:15px; font-weight:900; }
    .kit-dashboard-card-head > span { color:#64748B; font-size:11px; font-weight:800; white-space:nowrap; }
    .kit-dashboard-trend, .kit-dashboard-leagues, .kit-dashboard-latest { grid-column:1 / -1; }
    .kit-trend-legend { display:flex; flex-wrap:wrap; gap:8px 14px; color:#64748B; font-size:11px; font-weight:800; }
    .kit-trend-legend span { display:inline-flex; align-items:center; gap:5px; }
    .kit-trend-legend i { width:9px; height:9px; border-radius:2px; background:#94A3B8; }
    .kit-trend-legend .is-new, .kit-trend-stack .is-new { background:#22C55E; }
    .kit-trend-legend .is-upgraded, .kit-trend-stack .is-upgraded { background:#8B5CF6; }
    .kit-trend-legend .is-images, .kit-trend-stack .is-images { background:#F59E0B; }
    .kit-trend-legend .is-source, .kit-trend-stack .is-source { background:#2563EB; }
    .kit-trend-bars { display:grid; grid-template-columns:repeat(7, minmax(0, 1fr)); gap:10px; min-height:164px; margin-top:12px; align-items:end; }
    .kit-trend-day { display:grid; grid-template-rows:120px auto auto; gap:4px; min-width:0; color:#64748B; text-align:center; font-size:10px; font-weight:800; cursor:help; }
    .kit-trend-day:focus-visible { outline:2px solid #60A5FA; outline-offset:2px; border-radius:5px; }
    .kit-trend-stack { display:flex; flex-direction:column-reverse; justify-content:flex-start; width:100%; height:120px; overflow:hidden; border-radius:6px 6px 2px 2px; background:#F1F5F9; }
    .kit-trend-stack span { display:block; flex:0 0 auto; min-height:0; }
    .kit-trend-day strong { color:#0F172A; font-size:12px; }
    .kit-dashboard-league-grid { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:10px; }
    .kit-dashboard-league-row { display:grid; gap:8px; min-width:0; border:1px solid #E2E8F0; border-radius:10px; padding:11px; background:#F8FAFC; }
    .kit-dashboard-league-row > div:first-child { display:grid; gap:2px; min-width:0; }
    .kit-dashboard-league-row > div:first-child strong { color:#0F172A; font-size:13px; }
    .kit-dashboard-league-row > div:first-child span, .kit-dashboard-league-meta { color:#64748B; font-size:10px; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-dashboard-league-progress { display:grid; grid-template-columns:minmax(0, 1fr) auto; align-items:center; gap:7px; }
    .kit-dashboard-league-progress > span, .kit-status-distribution-row > i, .kit-type-coverage-row > i { display:block; height:7px; overflow:hidden; border-radius:999px; background:#E2E8F0; }
    .kit-dashboard-league-progress i, .kit-status-distribution-row b, .kit-type-coverage-row b { display:block; height:100%; border-radius:inherit; background:#2563EB; }
    .kit-dashboard-league-progress strong { color:#1D4ED8; font-size:11px; }
    .kit-dashboard-league-meta { display:grid; gap:3px; }
    .kit-status-distribution, .kit-type-coverage-grid { display:grid; gap:9px; }
    .kit-status-distribution-row { display:grid; grid-template-columns:110px minmax(40px, 1fr) 54px; align-items:center; gap:8px; color:#475569; font-size:11px; font-weight:800; }
    .kit-status-distribution-row strong { color:#334155; text-align:right; font-size:11px; }
    .kit-status-distribution-row.is-released b { background:#22C55E; }.kit-status-distribution-row.is-leaked b { background:#F59E0B; }.kit-status-distribution-row.is-concept b,.kit-status-distribution-row.is-info b { background:#2563EB; }.kit-status-distribution-row.is-fake b { background:#EF4444; }.kit-status-distribution-row.is-pending b,.kit-status-distribution-row.is-other b { background:#94A3B8; }
    .kit-type-coverage-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); column-gap:18px; }
    .kit-type-coverage-row { display:grid; grid-template-columns:38px 68px minmax(34px, 1fr) 38px; align-items:center; gap:7px; min-width:0; color:#475569; font-size:11px; font-weight:800; }
    .kit-type-coverage-row strong { color:#334155; }.kit-type-coverage-row span { color:#64748B; white-space:nowrap; }.kit-type-coverage-row em { color:#1D4ED8; font-style:normal; text-align:right; }
    .kit-dashboard-latest-list { display:grid; gap:7px; }
    .kit-dashboard-change-row { display:grid; grid-template-columns:minmax(130px, 1.1fr) 90px minmax(160px, 1fr); align-items:center; gap:10px; min-width:0; border-radius:8px; padding:9px 10px; color:#475569; background:#F8FAFC; font-size:12px; text-decoration:none; }
    a.kit-dashboard-change-row:hover { background:#EFF6FF; }.kit-dashboard-change-row strong { min-width:0; color:#0F172A; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.kit-dashboard-change-row span { color:#1D4ED8; font-weight:900; }.kit-dashboard-change-row em { min-width:0; color:#64748B; font-style:normal; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-leak-board .kit-tier-tabs { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:12px; padding-bottom:16px; border-bottom:1px solid #E2E8F0; }
    .kit-leak-board .kit-tier-tab { justify-content:space-between; min-height:54px; border-radius:14px; background:#FFFFFF; padding:0 16px; font-size:15px; box-shadow:0 8px 18px rgba(15,23,42,0.05); }
    .kit-leak-board .kit-tier-tab.active { background:#F8FBFF; border-color:#60A5FA; box-shadow:inset 0 -2px 0 #3B82F6, 0 10px 20px rgba(37,99,235,0.12); }
    .kit-leak-board .kit-tier-tab strong { min-height:26px; font-size:12px; background:#E8EEF6; }
    .kit-league-signal-board { border:none; border-radius:0; background:transparent; box-shadow:none; overflow:visible; }
    .kit-league-signal-board .kit-tier-scanner-layout { grid-template-columns:190px minmax(0, 1fr) 320px; gap:18px; padding:0; background:transparent; align-items:stretch; min-width:0; }
    .kit-league-signal-board .kit-tier-rail { gap:15px; align-content:start; }
    .kit-league-signal-board .kit-tier-rail-item { grid-template-columns:48px minmax(0, 1fr) auto; min-height:86px; border-radius:14px; padding:14px 12px; box-shadow:0 10px 20px rgba(15,23,42,0.06); border-left:5px solid #CBD5E1; }
    .kit-league-signal-board .kit-tier-rail-item.is-s { border-left-color:#EF4444; background:linear-gradient(90deg,#FFF1F2 0%,#FFFFFF 60%); }
    .kit-league-signal-board .kit-tier-rail-item.is-a { border-left-color:#F97316; background:linear-gradient(90deg,#FFF7ED 0%,#FFFFFF 60%); }
    .kit-league-signal-board .kit-tier-rail-item.is-b { border-left-color:#2563EB; background:linear-gradient(90deg,#EFF6FF 0%,#FFFFFF 60%); }
    .kit-league-signal-board .kit-tier-rail-item.is-c { border-left-color:#64748B; background:linear-gradient(90deg,#F1F5F9 0%,#FFFFFF 60%); }
    .kit-league-signal-board .kit-tier-rail-item.active { border-color:#60A5FA; box-shadow:0 0 0 3px rgba(96,165,250,0.16), 0 14px 24px rgba(37,99,235,0.12); }
    .kit-league-signal-board .kit-tier-rail-item strong { width:44px; height:44px; border-radius:13px; font-size:23px; }
    .kit-league-signal-board .kit-tier-rail-item strong small { font-size:11px; }
    .kit-league-signal-board .kit-tier-rail-item span { font-size:12px; line-height:1.35; }
    .kit-league-signal-board .kit-tier-rail-item em { font-size:14px; white-space:nowrap; }
    .kit-matrix-panel { min-width:0; max-width:100%; overflow-x:auto; overflow-y:auto; border:1px solid #DDE6F2; border-radius:18px; background:#FFFFFF; padding:16px 16px; box-shadow:0 12px 26px rgba(15,23,42,0.05); }
    .kit-matrix-grid { display:grid; grid-template-columns:minmax(154px, 1fr) repeat(var(--kit-type-count, 12), minmax(36px, 0.62fr)); align-items:center; min-width:720px; }
    .kit-matrix-head-row { position:sticky; top:0; z-index:4; min-height:60px; border-bottom:1px solid #E2E8F0; background:#FFFFFF; }
    .kit-matrix-type-head { text-align:center; color:#64748B; font-size:11px; line-height:1.1; font-weight:900; text-transform:uppercase; }
    .kit-matrix-type-head strong { display:block; color:#0F172A; font-size:12px; line-height:1.2; margin-bottom:4px; }
    .kit-matrix-type-head span { display:block; color:#94A3B8; font-size:10px; letter-spacing:0.04em; }
    .kit-matrix-row { min-height:68px; border-bottom:1px solid #E2E8F0; }
    .kit-matrix-row:last-child { border-bottom:none; }
    .kit-matrix-team, .kit-matrix-team-head { position:sticky; left:0; z-index:3; background:#FFFFFF; box-shadow:8px 0 10px -12px rgba(15,23,42,.5); }
    .kit-matrix-team { display:flex; align-items:center; gap:10px; min-width:0; padding-right:12px; }
    .kit-matrix-team-badge { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:999px; background:#E2E8F0; color:#0F172A; font-size:11px; font-weight:900; flex:0 0 auto; box-shadow:inset 0 0 0 2px #FFFFFF; }
    .kit-matrix-team-badge.is-s { background:#FEE2E2; color:#B91C1C; }
    .kit-matrix-team-badge.is-a { background:#FEF3C7; color:#B45309; }
    .kit-matrix-team-badge.is-b { background:#DBEAFE; color:#1D4ED8; }
    .kit-matrix-team-badge.is-c { background:#E2E8F0; color:#475569; }
    .kit-matrix-team span:not(.kit-matrix-team-badge) { min-width:0; }
    .kit-matrix-team strong { display:block; color:#0F172A; font-size:14px; line-height:1.25; font-weight:900; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-matrix-team em { display:block; margin-top:4px; color:#64748B; font-size:12px; line-height:1.2; font-style:normal; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-matrix-cell { display:flex; align-items:center; justify-content:center; min-width:0; }
    .kit-matrix-dot-wrap { display:grid; justify-items:center; gap:2px; min-width:0; }
    .kit-matrix-dot-wrap .kit-change-badge { max-width:100%; padding:0 4px; font-size:8px; overflow:hidden; text-overflow:ellipsis; }
    .kit-matrix-dot { appearance:none; display:inline-flex; align-items:center; justify-content:center; width:30px; height:30px; border:0; border-radius:999px; background:transparent; cursor:pointer; padding:0; }
    .kit-matrix-dot span { width:16px; height:16px; border-radius:999px; box-shadow:0 0 0 5px rgba(148,163,184,0.12), inset 0 -1px 2px rgba(15,23,42,0.18); }
    .kit-matrix-dot.is-released span { background:#46B64A; }
    .kit-matrix-dot.is-leaked span, .kit-matrix-dot.is-info span { background:#F59E0B; }
    .kit-matrix-dot.is-concept span { background:#3B82F6; }
    .kit-matrix-dot.is-fake span { background:#EF4444; }
    .kit-matrix-dot:focus-visible { outline:2px solid #60A5FA; outline-offset:2px; }
    .kit-matrix-dash { color:#CBD5E1; font-size:20px; line-height:1; font-weight:900; }
    .kit-matrix-team-head { display:grid; align-content:center; gap:3px; color:#64748B; font-size:11px; font-weight:900; }
    .kit-matrix-team-head strong { color:#0F172A; font-size:13px; line-height:1.15; }
    .kit-matrix-team-head span { color:#64748B; font-size:11px; }
    .kit-matrix-more { appearance:none; width:100%; border:0; background:transparent; display:flex; align-items:center; gap:10px; min-height:42px; padding:0 4px; color:#64748B; font-size:12px; font-weight:900; text-align:left; cursor:pointer; border-radius:10px; }
    .kit-matrix-more:hover { background:#F8FAFC; color:#1D4ED8; }
    .kit-matrix-more:focus-visible { outline:2px solid #60A5FA; outline-offset:2px; }
    .kit-matrix-more span { color:#94A3B8; font-size:20px; letter-spacing:2px; }
    .kit-matrix-more strong { color:#0F172A; }
    .kit-matrix-more em { color:#64748B; font-style:normal; }
    .kit-overview-card { display:grid; gap:14px; align-content:start; border:1px solid #DDE6F2; border-radius:16px; background:#FFFFFF; padding:18px; box-shadow:0 10px 22px rgba(15,23,42,0.04); }
    .kit-overview-card div { border:0; border-radius:0; background:transparent; padding:0; box-shadow:none; }
    .kit-overview-card h4 { margin:0; color:#0F172A; font-size:16px; line-height:1.3; font-weight:900; }
    .kit-overview-donut-row { display:grid; grid-template-columns:100px minmax(0, 1fr); gap:10px; align-items:center; }
    .kit-overview-donut { position:relative; width:96px; height:96px; border-radius:999px; }
    .kit-overview-donut::after { content:''; position:absolute; inset:15px; border-radius:999px; background:#FFFFFF; box-shadow:inset 0 0 0 1px #E2E8F0; }
    .kit-overview-donut div { position:absolute; inset:0; z-index:1; display:grid; align-content:center; justify-items:center; }
    .kit-overview-donut strong { margin:0; color:#0F172A; font-size:22px; line-height:1; font-weight:900; }
    .kit-overview-donut span { margin-top:5px; color:#64748B; font-size:11px; font-weight:900; }
    .kit-overview-legend { display:grid; gap:6px; min-width:0; }
    .kit-overview-legend-row { display:grid; grid-template-columns:minmax(86px, 1fr) 32px 24px; gap:5px; align-items:center; color:#64748B; font-size:10px; line-height:1.25; font-weight:900; }
    .kit-overview-legend-row span { position:relative; padding-left:14px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-overview-legend-row span::before { content:''; position:absolute; left:0; top:50%; width:7px; height:7px; border-radius:999px; transform:translateY(-50%); background:#CBD5E1; }
    .kit-overview-legend-row.is-released span::before { background:#22C55E; }
    .kit-overview-legend-row.is-leaked span::before { background:#F59E0B; }
    .kit-overview-legend-row.is-concept span::before { background:#3B82F6; }
    .kit-overview-legend-row.is-fake span::before { background:#EF4444; }
    .kit-overview-legend-row.is-info span::before { background:#8B5CF6; }
    .kit-overview-legend-row em { color:#64748B; font-style:normal; text-align:right; }
    .kit-overview-legend-row strong { margin:0; color:#475569; font-size:11px; text-align:right; }
    .kit-latest-signals { display:grid; gap:8px; border-top:1px solid #E2E8F0; padding-top:12px; }
    .kit-overview-card .kit-latest-signals { border-top:1px solid #E2E8F0; padding-top:12px; }
    .kit-latest-signals h5 { margin:0 0 3px; color:#0F172A; font-size:13px; font-weight:900; }
    .kit-latest-signal { appearance:none; display:grid; grid-template-columns:62px minmax(0, 1fr) auto; align-items:center; gap:8px; border:0; background:transparent; padding:0; color:#64748B; text-align:left; cursor:pointer; }
    .kit-latest-signal > span { color:#94A3B8; font-size:11px; font-weight:800; }
    .kit-latest-signal strong { color:#0F172A; font-size:12px; line-height:1.2; font-weight:900; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .kit-latest-signal .kit-status-pill { min-height:22px; padding:0 8px; font-size:10px; }
    .kit-all-signals-button { display:flex; align-items:center; justify-content:center; gap:12px; min-height:36px; border:1px solid #DDE6F2; border-radius:10px; background:#FFFFFF; color:#1D4ED8; font-size:13px; font-weight:900; }
    .kit-all-signals-button span { color:#1D4ED8; font-size:22px; line-height:1; }
    .kit-empty-state { padding: 18px; color: #64748B; background: #F8FAFC; font-size: 13px; line-height: 1.7; }

    /* Jersey reveal operations board */
    #routeJerseys { min-width:0; }
    #routeJerseys .kit-panorama-page {
        --kit-ops-green:#23865A;
        --kit-ops-green-dark:#17623F;
        --kit-ops-green-soft:#E8F4EC;
        --kit-ops-gold:#C58D19;
        --kit-ops-coral:#D46D52;
        --kit-ops-ink:#27362C;
        --kit-ops-muted:#748078;
        --kit-ops-line:#DDE5DE;
        min-width:0;
        gap:12px;
        padding:18px;
        border:1px solid #E1E7E1;
        border-radius:18px;
        background:#F5F8F4;
        box-shadow:0 14px 36px rgba(31,56,39,.06);
        overflow:hidden;
    }
    #routeJerseys .kit-panorama-page .intel-panel-head {
        align-items:center;
        margin:0 0 2px;
        padding:0 0 2px;
    }
    #routeJerseys .kit-panorama-page .intel-panel-title {
        color:var(--kit-ops-ink);
        font-size:22px;
        line-height:1.2;
        letter-spacing:.01em;
    }
    #routeJerseys .kit-panorama-page .intel-panel-title::before {
        content:'衣';
        display:inline-flex;
        align-items:center;
        justify-content:center;
        width:38px;
        height:38px;
        border-radius:11px;
        background:var(--kit-ops-green);
        color:#FFF;
        font-size:15px;
        font-weight:900;
        box-shadow:0 7px 16px rgba(35,134,90,.18);
    }
    #routeJerseys .kit-meta-line { margin-top:7px; gap:6px; }
    #routeJerseys .kit-meta-chip {
        min-height:25px;
        padding:0 10px;
        border:1px solid var(--kit-ops-line);
        border-radius:999px;
        background:#FFF;
        color:#66736B;
        font-size:11px;
        line-height:25px;
        font-weight:800;
        white-space:nowrap;
    }
    #routeJerseys .intel-actions .btn-tools {
        min-height:32px;
        border-radius:999px;
        border-color:var(--kit-ops-line);
        background:#FFF;
        color:var(--kit-ops-green-dark);
        font-size:11px;
        box-shadow:none;
    }
    #routeJerseys .kit-metric-grid {
        display:grid;
        grid-template-columns:repeat(5, minmax(0, 1fr));
        gap:10px;
        margin:0;
    }
    #routeJerseys .kit-metric-card {
        min-height:96px;
        gap:4px;
        padding:12px 14px 10px;
        border:1px solid var(--kit-ops-line);
        border-radius:12px;
        background:#FFF;
        box-shadow:0 5px 13px rgba(31,56,39,.035);
    }
    #routeJerseys .kit-metric-card > span {
        color:#69766E;
        font-size:11px;
        font-weight:800;
    }
    #routeJerseys .kit-metric-card > div:not(.kit-metric-spark) {
        display:flex;
        align-items:baseline;
        gap:4px;
    }
    #routeJerseys .kit-metric-card strong {
        color:var(--kit-ops-ink);
        font-size:27px;
        letter-spacing:-.02em;
    }
    #routeJerseys .kit-metric-card em {
        color:#879188;
        font-size:11px;
        font-style:normal;
        font-weight:800;
    }
    #routeJerseys .kit-metric-card.is-covered strong,
    #routeJerseys .kit-metric-card.is-released strong { color:var(--kit-ops-green); }
    #routeJerseys .kit-metric-card.is-leaked strong { color:var(--kit-ops-coral); }
    #routeJerseys .kit-metric-card.is-pending strong { color:var(--kit-ops-gold); }
    .kit-metric-spark {
        display:flex;
        align-items:flex-end;
        gap:3px;
        height:18px;
        margin-top:auto;
    }
    .kit-metric-spark i {
        flex:1 1 0;
        min-height:2px;
        border-radius:2px 2px 0 0;
        background:#6AA181;
    }
    .kit-metric-card.is-released .kit-metric-spark i { background:#4F956E; }
    .kit-metric-card.is-leaked .kit-metric-spark i { background:#D37A62; }
    .kit-metric-card.is-pending .kit-metric-spark i { background:#C9A04D; }
    .kit-ops-board { display:grid; gap:12px; min-width:0; }
    .kit-ops-card {
        min-width:0;
        border:1px solid var(--kit-ops-line);
        border-radius:12px;
        background:#FFF;
        padding:14px;
        box-shadow:0 5px 14px rgba(31,56,39,.035);
    }
    .kit-ops-card-head {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        min-width:0;
        margin-bottom:12px;
    }
    .kit-ops-card-head h4 {
        margin:0;
        color:var(--kit-ops-ink);
        font-size:14px;
        line-height:1.25;
        font-weight:900;
    }
    .kit-ops-card-head h4 small {
        margin-left:5px;
        color:#A2AAA4;
        font-size:9px;
        font-weight:800;
        letter-spacing:.08em;
    }
    .kit-ops-card-head > span {
        color:#98A19A;
        font-size:10px;
        line-height:1.3;
        font-weight:700;
        text-align:right;
    }
    .kit-ops-overview-grid {
        display:grid;
        grid-template-columns:minmax(225px, .95fr) minmax(360px, 1.75fr) minmax(210px, .85fr);
        gap:10px;
        min-width:0;
    }
    .kit-ops-status-body {
        display:grid;
        grid-template-columns:112px minmax(0, 1fr);
        gap:14px;
        align-items:center;
    }
    .kit-ops-donut,
    .kit-ops-progress-ring {
        position:relative;
        width:108px;
        height:108px;
        border-radius:50%;
        flex:0 0 auto;
    }
    .kit-ops-donut::after,
    .kit-ops-progress-ring::after {
        content:'';
        position:absolute;
        inset:15px;
        border-radius:50%;
        background:#FFF;
        box-shadow:inset 0 0 0 1px #EBF0EC;
    }
    .kit-ops-donut > div,
    .kit-ops-progress-ring > div {
        position:absolute;
        inset:0;
        z-index:1;
        display:grid;
        align-content:center;
        justify-items:center;
    }
    .kit-ops-donut strong,
    .kit-ops-progress-ring strong {
        color:var(--kit-ops-ink);
        font-size:20px;
        line-height:1;
        font-weight:900;
    }
    .kit-ops-donut span,
    .kit-ops-progress-ring span {
        margin-top:5px;
        color:#89938C;
        font-size:9px;
        font-weight:800;
    }
    .kit-ops-status-legend { display:grid; gap:5px; }
    .kit-ops-status-legend > div {
        display:grid;
        grid-template-columns:minmax(58px, 1fr) 28px 30px;
        gap:5px;
        align-items:center;
        color:#69756E;
        font-size:10px;
    }
    .kit-ops-status-legend span {
        position:relative;
        padding-left:13px;
        white-space:nowrap;
    }
    .kit-ops-status-legend span::before {
        content:'';
        position:absolute;
        left:0;
        top:50%;
        width:7px;
        height:7px;
        border-radius:50%;
        transform:translateY(-50%);
        background:#CBD5E1;
    }
    .kit-ops-status-legend .is-released span::before { background:#22C55E; }
    .kit-ops-status-legend .is-leaked span::before { background:#F59E0B; }
    .kit-ops-status-legend .is-concept span::before { background:#3B82F6; }
    .kit-ops-status-legend .is-fake span::before { background:#EF4444; }
    .kit-ops-status-legend .is-info span::before { background:#8B5CF6; }
    .kit-ops-status-legend .is-other span::before { background:#64748B; }
    .kit-ops-status-legend strong { color:#4D5A52; text-align:right; }
    .kit-ops-status-legend em { color:#9AA39D; font-style:normal; text-align:right; }
    .kit-ops-league-list { display:grid; gap:10px; }
    .kit-ops-league-row,
    .kit-ops-league-total {
        display:grid;
        grid-template-columns:54px minmax(80px, 1fr) 58px 34px;
        gap:9px;
        align-items:center;
        color:#5D6962;
        font-size:10px;
    }
    .kit-ops-league-row > strong,
    .kit-ops-league-total > strong { color:#34443A; font-size:11px; }
    .kit-ops-league-row > i,
    .kit-ops-league-total > i {
        display:block;
        height:9px;
        border-radius:3px;
        background:#EFF3F0;
        overflow:hidden;
    }
    .kit-ops-league-row > i b,
    .kit-ops-league-total > i b {
        display:block;
        height:100%;
        border-radius:inherit;
        background:var(--kit-ops-green);
    }
    .kit-ops-league-row > span,
    .kit-ops-league-total > span { text-align:right; white-space:nowrap; }
    .kit-ops-league-row > em { color:#77827B; font-style:normal; font-weight:800; text-align:right; }
    .kit-ops-league-total {
        margin-top:12px;
        padding-top:10px;
        border-top:1px solid #E7ECE8;
    }
    .kit-ops-league-total > i b { background:#698392; }
    .kit-ops-progress-card {
        display:grid;
        justify-items:center;
        align-content:start;
        text-align:center;
    }
    .kit-ops-progress-card .kit-ops-card-head { width:100%; justify-self:stretch; }
    .kit-ops-progress-ring { margin:2px auto 8px; }
    .kit-ops-progress-card p { margin:0; color:#637068; font-size:11px; font-weight:800; }
    .kit-ops-progress-card p strong { color:var(--kit-ops-green); }
    .kit-ops-progress-card > span { margin-top:4px; color:#9AA39D; font-size:9px; }
    .kit-ops-completeness-grid {
        display:grid;
        grid-template-columns:minmax(0, 2.35fr) minmax(250px, .85fr);
        gap:10px;
        min-width:0;
    }
    .kit-ops-type-list { display:grid; gap:9px; }
    .kit-ops-type-row {
        display:grid;
        grid-template-columns:48px minmax(0, 1fr) 58px;
        gap:10px;
        align-items:center;
        color:#66736B;
        font-size:10px;
    }
    .kit-ops-type-row > strong { color:#435149; font-size:11px; }
    .kit-ops-type-row > i {
        display:flex;
        height:10px;
        border-radius:3px;
        background:#DFE6E0;
        overflow:hidden;
    }
    .kit-ops-type-row > i b { display:block; height:100%; }
    .kit-ops-type-row > i .is-released { background:#23865A; }
    .kit-ops-type-row > i .is-leaked { background:#C58D19; }
    .kit-ops-type-row > i .is-concept { background:#4E81A8; }
    .kit-ops-type-row > i .is-fake { background:#D46D52; }
    .kit-ops-type-row > i .is-info,
    .kit-ops-type-row > i .is-other { background:#8B6DA8; }
    .kit-ops-type-row > span { text-align:right; white-space:nowrap; }
    .kit-ops-ranking-list { display:grid; gap:7px; }
    .kit-ops-ranking-row {
        display:grid;
        grid-template-columns:18px minmax(92px, 1fr) minmax(50px, .8fr) 18px;
        gap:7px;
        align-items:center;
        min-width:0;
    }
    .kit-ops-ranking-row > em {
        color:var(--kit-ops-green);
        font-size:10px;
        font-style:normal;
        font-weight:900;
        text-align:center;
    }
    .kit-ops-ranking-row > span { min-width:0; }
    .kit-ops-ranking-row > span strong,
    .kit-ops-ranking-row > span small {
        display:block;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .kit-ops-ranking-row > span strong { color:#3E4D43; font-size:10px; }
    .kit-ops-ranking-row > span small { margin-top:2px; color:#9AA39D; font-size:8px; }
    .kit-ops-ranking-row > i {
        display:block;
        height:7px;
        border-radius:3px;
        background:#E7ECE8;
        overflow:hidden;
    }
    .kit-ops-ranking-row > i b {
        display:block;
        height:100%;
        border-radius:inherit;
        background:var(--kit-ops-green);
    }
    .kit-ops-ranking-row > strong { color:#536158; font-size:10px; text-align:right; }
    .kit-ops-lower-grid {
        display:grid;
        grid-template-columns:minmax(0, 2.65fr) minmax(255px, .9fr);
        gap:10px;
        min-width:0;
        align-items:start;
    }
    .kit-ops-matrix-card { padding:12px; overflow:hidden; }
    .kit-ops-info-filter {
        display:inline-flex;
        align-items:center;
        gap:6px;
        color:#6F7B73;
        font-size:10px;
        font-weight:800;
        cursor:pointer;
    }
    .kit-ops-info-filter input {
        width:14px;
        height:14px;
        accent-color:var(--kit-ops-green);
    }
    .kit-ops-matrix-card > .kit-status-chip-row {
        gap:7px;
        margin:0 0 10px;
    }
    .kit-ops-matrix-card > .kit-status-chip-row .kit-status-chip,
    .kit-ops-updates-card > .kit-status-chip-row .kit-status-chip {
        min-height:22px;
        padding:0 7px;
        font-size:8px;
    }
    .kit-ops-league-tabs {
        display:flex;
        align-items:center;
        gap:6px;
        min-width:0;
        margin-bottom:10px;
        overflow-x:auto;
        scrollbar-width:thin;
    }
    .kit-ops-league-tabs button {
        appearance:none;
        display:inline-flex;
        align-items:center;
        gap:6px;
        min-height:30px;
        padding:0 10px;
        border:1px solid #D9E3DB;
        border-radius:999px;
        background:#FFF;
        color:#657269;
        font:inherit;
        font-size:9px;
        font-weight:900;
        white-space:nowrap;
        cursor:pointer;
    }
    .kit-ops-league-tabs button.active {
        border-color:var(--kit-ops-green);
        background:var(--kit-ops-green);
        color:#FFF;
    }
    .kit-ops-league-tabs button strong {
        min-width:26px;
        padding:2px 5px;
        border-radius:999px;
        background:rgba(255,255,255,.72);
        color:inherit;
        font-size:8px;
        text-align:center;
    }
    .kit-ops-league-tabs button.active strong { color:var(--kit-ops-green-dark); }
    .kit-ops-matrix-stack { display:grid; gap:10px; min-width:0; }
    .kit-ops-matrix-tier {
        min-width:0;
        border:1px solid #E2E8E3;
        border-radius:8px;
        overflow:hidden;
    }
    .kit-ops-matrix-tier-head {
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:10px;
        min-height:32px;
        padding:0 10px;
        background:#E8F4EC;
        color:#357052;
        font-size:9px;
    }
    .kit-ops-matrix-tier.is-a .kit-ops-matrix-tier-head { background:#EDF6EE; }
    .kit-ops-matrix-tier.is-b .kit-ops-matrix-tier-head { background:#F1F5F2; }
    .kit-ops-matrix-tier.is-c .kit-ops-matrix-tier-head { background:#F4F6F4; }
    .kit-ops-matrix-tier-head strong { font-size:10px; }
    .kit-ops-matrix-scroll { max-width:100%; overflow-x:auto; background:#FFF; }
    .kit-ops-matrix-grid {
        display:grid;
        grid-template-columns:minmax(142px, 1.25fr) repeat(var(--kit-type-count), minmax(45px, .62fr));
        align-items:center;
        min-width:max(100%, calc(142px + var(--kit-type-count) * 58px));
    }
    .kit-ops-matrix-head {
        position:sticky;
        top:0;
        z-index:3;
        min-height:38px;
        border-bottom:1px solid #E6EBE7;
        background:#FFF;
        color:#8C9690;
        font-size:8px;
        text-align:center;
    }
    .kit-ops-matrix-head > span:first-child { padding-left:10px; text-align:left; }
    .kit-ops-matrix-head strong,
    .kit-ops-matrix-head small { display:block; }
    .kit-ops-matrix-head strong { color:#68746C; font-size:9px; }
    .kit-ops-matrix-head small { margin-top:2px; color:#A5ADA8; font-size:7px; }
    .kit-ops-matrix-row {
        min-height:43px;
        border-bottom:1px solid #EDF1EE;
    }
    .kit-ops-matrix-row:last-child { border-bottom:0; }
    .kit-ops-matrix-team {
        position:sticky;
        left:0;
        z-index:2;
        min-width:0;
        padding:7px 10px;
        background:#FFF;
        box-shadow:7px 0 10px -12px rgba(31,56,39,.7);
    }
    .kit-ops-matrix-team strong,
    .kit-ops-matrix-team small {
        display:block;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    .kit-ops-matrix-team strong { color:#425047; font-size:9px; }
    .kit-ops-matrix-team small { margin-top:2px; color:#A1AAA4; font-size:7px; }
    .kit-ops-matrix-card .kit-matrix-dot {
        width:23px;
        height:23px;
    }
    .kit-ops-matrix-card .kit-matrix-dot span {
        width:9px;
        height:9px;
        box-shadow:none;
    }
    .kit-ops-matrix-card .kit-matrix-dash {
        color:#D5DED7;
        font-size:13px;
    }
    .kit-ops-matrix-card .kit-change-badge { display:none; }
    .kit-ops-updates-card {
        position:sticky;
        top:116px;
        align-self:start;
    }
    .kit-ops-update-list { display:grid; }
    .kit-ops-update-list > a,
    .kit-ops-update-list > div:not(.kit-empty-state) {
        display:grid;
        gap:5px;
        padding:10px 0;
        border-bottom:1px solid #E6EBE7;
        text-decoration:none;
    }
    .kit-ops-update-list > :last-child { border-bottom:0; }
    .kit-ops-update-list strong {
        color:#3D4A42;
        font-size:10px;
        line-height:1.45;
    }
    .kit-ops-update-list > a:hover strong { color:var(--kit-ops-green-dark); }
    .kit-ops-update-list span {
        display:flex;
        align-items:center;
        gap:5px;
        color:#89938C;
        font-size:8px;
        line-height:1.35;
    }
    .kit-ops-update-list span i {
        width:6px;
        height:6px;
        border-radius:50%;
        background:#94A3B8;
    }
    .kit-ops-update-list span i.is-released { background:#22C55E; }
    .kit-ops-update-list span i.is-leaked,
    .kit-ops-update-list span i.is-info { background:#F59E0B; }
    .kit-ops-update-list span i.is-concept { background:#3B82F6; }
    .kit-ops-update-list span i.is-fake { background:#EF4444; }
    .kit-ops-updates-card > .kit-status-chip-row {
        margin-top:10px;
        padding-top:10px;
        border-top:1px solid #E6EBE7;
        gap:5px;
    }
    @media (max-width:1180px) {
        #routeJerseys .kit-metric-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
        .kit-ops-overview-grid { grid-template-columns:minmax(220px, .9fr) minmax(360px, 1.6fr); }
        .kit-ops-progress-card { grid-column:1 / -1; grid-template-columns:auto 118px minmax(0, 1fr); align-items:center; justify-items:start; text-align:left; }
        .kit-ops-progress-card .kit-ops-card-head { margin:0; }
        .kit-ops-progress-card .kit-ops-progress-ring { margin:0; }
        .kit-ops-progress-card > span { margin:0; }
        .kit-ops-lower-grid { grid-template-columns:minmax(0, 1fr); }
        .kit-ops-updates-card { position:relative; top:auto; }
        .kit-ops-update-list { grid-template-columns:repeat(2, minmax(0, 1fr)); column-gap:18px; }
    }
    @media (max-width:900px) {
        #routeJerseys .kit-panorama-page { padding:14px; }
        #routeJerseys .kit-panorama-page .intel-panel-head { align-items:flex-start; }
        .kit-ops-overview-grid,
        .kit-ops-completeness-grid { grid-template-columns:minmax(0, 1fr); }
        .kit-ops-progress-card { grid-column:auto; grid-template-columns:1fr; justify-items:center; text-align:center; }
        .kit-ops-progress-card .kit-ops-card-head { width:100%; }
        .kit-ops-update-list { grid-template-columns:minmax(0, 1fr); }
    }
    @media (max-width:768px) {
        #routeJerseys .kit-panorama-page { padding:12px; border-radius:14px; }
        #routeJerseys .kit-panorama-page .intel-panel-head { flex-direction:column; }
        #routeJerseys .kit-panorama-page .intel-panel-title { font-size:19px; }
        #routeJerseys .kit-panorama-page .intel-panel-title::before { width:34px; height:34px; }
        #routeJerseys .kit-metric-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
        .kit-ops-status-body { grid-template-columns:108px minmax(0, 1fr); }
        .kit-ops-league-row,
        .kit-ops-league-total { grid-template-columns:46px minmax(70px, 1fr) 54px 31px; gap:6px; }
        .kit-ops-card { padding:12px; }
        .kit-ops-type-row { grid-template-columns:42px minmax(0, 1fr) 52px; gap:7px; }
        .kit-ops-matrix-card { padding:10px; }
    }
    @media (max-width:520px) {
        #routeJerseys .kit-metric-grid { grid-template-columns:minmax(0, 1fr); }
        #routeJerseys .kit-metric-card { min-height:88px; }
        .kit-ops-status-body { grid-template-columns:minmax(0, 1fr); justify-items:center; }
        .kit-ops-status-legend { width:100%; }
        .kit-ops-card-head { align-items:flex-start; }
        .kit-ops-card-head > span { white-space:normal; }
        .kit-ops-ranking-row { grid-template-columns:18px minmax(86px, 1fr) 58px 18px; }
        .kit-ops-info-filter { white-space:nowrap; }
    }

    /* Jersey reveal V9 source layout */
    #routeJerseys {
        min-width:0;
        background:#F8FBFF;
    }
    #routeJerseys > #jerseysRouteContent,
    #routeJerseys .kit-route-stack { min-width:0; }
    #routeJerseys .kit-v9-page {
        --kit-v9-bg:#F8FBFF;
        --kit-v9-card:#FFFFFF;
        --kit-v9-line:#D7E6F8;
        --kit-v9-line2:#C7DCF5;
        --kit-v9-ink:#102A4C;
        --kit-v9-ink2:#6480A0;
        --kit-v9-ink3:#94A3B8;
        --kit-v9-primary:#2563EB;
        --kit-v9-primary-soft:#EFF6FF;
        --kit-v9-red:#B5492F;
        --kit-v9-red-soft:#F9E9E4;
        --kit-v9-amber:#9A7A18;
        --kit-v9-amber-soft:#F6F0DC;
        --kit-v9-slate:#5D7A8C;
        --kit-v9-none:#E2E8F0;
        width:100%;
        max-width:1300px;
        margin:0 auto;
        padding:0 30px 44px;
        color:var(--kit-v9-ink);
        font-family:"Noto Sans SC",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
        font-size:16px;
        line-height:1.55;
        -webkit-font-smoothing:antialiased;
    }
    #routeJerseys .kit-v9-page *,
    #routeJerseys .kit-v9-page *::before,
    #routeJerseys .kit-v9-page *::after { box-sizing:border-box; }
    #routeJerseys .kit-v9-page .topbar {
        display:flex;
        align-items:center;
        gap:14px;
        padding:22px 0 18px;
        flex-wrap:wrap;
    }
    #routeJerseys .kit-v9-page .topbar .logo {
        width:40px;
        height:40px;
        border-radius:12px;
        background:var(--kit-v9-primary);
        color:#fff;
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:16px;
        font-weight:700;
    }
    #routeJerseys .kit-v9-page .topbar h1 {
        margin:0;
        color:var(--kit-v9-ink);
        font-size:20px;
        line-height:1.55;
        font-weight:700;
    }
    #routeJerseys .kit-v9-page .topbar .sub {
        color:var(--kit-v9-ink2);
        font-size:11.5px;
        margin-top:3px;
    }
    #routeJerseys .kit-v9-page .topbar .r {
        margin-left:auto;
        display:flex;
        gap:10px;
        flex-wrap:wrap;
    }
    #routeJerseys .kit-v9-page .tag {
        padding:6px 14px;
        border:1px solid var(--kit-v9-line);
        border-radius:999px;
        background:#fff;
        color:var(--kit-v9-ink2);
        font-size:11.5px;
        line-height:1.55;
        text-decoration:none;
        white-space:nowrap;
    }
    #routeJerseys .kit-v9-page .tag b { color:var(--kit-v9-ink); }
    #routeJerseys .kit-v9-page .card {
        min-width:0;
        margin:0;
        padding:0;
        border:1px solid var(--kit-v9-line);
        border-radius:14px;
        background:var(--kit-v9-card);
        box-shadow:none;
        overflow:visible;
    }
    #routeJerseys .kit-v9-page .card-h {
        display:flex;
        align-items:baseline;
        gap:9px;
        padding:15px 20px 11px;
    }
    #routeJerseys .kit-v9-page .card-h h2 {
        margin:0;
        color:var(--kit-v9-ink);
        font-size:14px;
        line-height:1.55;
        font-weight:700;
    }
    #routeJerseys .kit-v9-page .card-h .en {
        color:var(--kit-v9-ink3);
        font-size:10px;
        letter-spacing:.12em;
        text-transform:uppercase;
    }
    #routeJerseys .kit-v9-page .card-h .right {
        margin-left:auto;
        color:var(--kit-v9-ink3);
        font-size:11px;
    }
    #routeJerseys .kit-v9-page .kpis {
        display:grid;
        grid-template-columns:repeat(5,minmax(0,1fr));
        gap:14px;
        margin-bottom:16px;
    }
    #routeJerseys .kit-v9-page .kpi { padding:17px 20px 15px; }
    #routeJerseys .kit-v9-page .kpi .top {
        display:flex;
        align-items:center;
        justify-content:space-between;
    }
    #routeJerseys .kit-v9-page .kpi .l {
        color:var(--kit-v9-ink2);
        font-size:11.5px;
        font-weight:500;
    }
    #routeJerseys .kit-v9-page .kpi .chip {
        padding:2px 8px;
        border-radius:999px;
        font-size:10px;
        font-weight:600;
    }
    #routeJerseys .kit-v9-page .kpi .chip.is-green { background:var(--kit-v9-primary-soft);color:var(--kit-v9-primary); }
    #routeJerseys .kit-v9-page .kpi .chip.is-red { background:var(--kit-v9-red-soft);color:var(--kit-v9-red); }
    #routeJerseys .kit-v9-page .kpi .chip.is-amber { background:var(--kit-v9-amber-soft);color:var(--kit-v9-amber); }
    #routeJerseys .kit-v9-page .kpi .v {
        margin-top:8px;
        color:var(--kit-v9-ink);
        font-size:29px;
        line-height:1.1;
        font-weight:700;
        font-variant-numeric:tabular-nums;
    }
    #routeJerseys .kit-v9-page .kpi .v small {
        color:var(--kit-v9-ink3);
        font-size:13px;
        font-weight:400;
    }
    #routeJerseys .kit-v9-page .kpi .spark {
        display:flex;
        align-items:flex-end;
        gap:3px;
        height:20px;
        margin-top:11px;
    }
    #routeJerseys .kit-v9-page .kpi .spark i {
        flex:1;
        border-radius:2px 2px 0 0;
        opacity:.8;
    }
    #routeJerseys .kit-v9-page .gridA {
        display:grid;
        grid-template-columns:320px minmax(0,1fr) 320px;
        gap:14px;
        margin-bottom:16px;
    }
    #routeJerseys .kit-v9-page .gridB {
        display:grid;
        grid-template-columns:minmax(0,1fr) 360px;
        gap:14px;
        margin-bottom:16px;
    }
    #routeJerseys .kit-v9-page .donut-box {
        display:flex;
        justify-content:center;
        padding:16px 0 6px;
    }
    #routeJerseys .kit-v9-page .donut-box svg,
    #routeJerseys .kit-v9-page .ring-box svg {
        display:block;
        width:126px;
        height:126px;
        max-width:none;
    }
    #routeJerseys .kit-v9-page .dl { padding:0 20px 16px; }
    #routeJerseys .kit-v9-page .dl .row {
        display:flex;
        align-items:center;
        gap:8px;
        padding:4.5px 0;
        color:var(--kit-v9-ink2);
        font-size:11.5px;
    }
    #routeJerseys .kit-v9-page .dl .row i {
        width:9px;
        height:9px;
        border-radius:3px;
    }
    #routeJerseys .kit-v9-page .dl .row b {
        margin-left:auto;
        color:var(--kit-v9-ink);
        font-variant-numeric:tabular-nums;
    }
    #routeJerseys .kit-v9-page .hbars { padding:6px 20px 16px; }
    #routeJerseys .kit-v9-page .hbar-row {
        display:grid;
        grid-template-columns:100px minmax(0,1fr) 90px;
        gap:12px;
        align-items:center;
        padding:8px 0;
    }
    #routeJerseys .kit-v9-page .hbar-row.total-row {
        margin-top:6px;
        padding-top:12px;
        border-top:1px solid var(--kit-v9-line);
    }
    #routeJerseys .kit-v9-page .hbar-row .lb {
        display:flex;
        gap:7px;
        align-items:center;
        color:var(--kit-v9-ink);
        font-size:12.5px;
        font-weight:600;
    }
    #routeJerseys .kit-v9-page .hbar-row .tr {
        height:13px;
        border-radius:4px;
        background:var(--kit-v9-bg);
        overflow:hidden;
    }
    #routeJerseys .kit-v9-page .hbar-row .tr i {
        display:block;
        height:100%;
        border-radius:4px;
        background:var(--kit-v9-primary);
    }
    #routeJerseys .kit-v9-page .hbar-row.total-row .tr i { background:var(--kit-v9-slate); }
    #routeJerseys .kit-v9-page .hbar-row .vl {
        color:var(--kit-v9-ink2);
        font-size:11.5px;
        text-align:right;
        font-variant-numeric:tabular-nums;
        white-space:nowrap;
    }
    #routeJerseys .kit-v9-page .hbar-row .vl b { color:var(--kit-v9-ink); }
    #routeJerseys .kit-v9-page .ring-box {
        display:flex;
        flex-direction:column;
        align-items:center;
        padding:18px 0 8px;
    }
    #routeJerseys .kit-v9-page .ring-cap {
        padding:6px 18px 16px;
        color:var(--kit-v9-ink2);
        font-size:11.5px;
        line-height:1.8;
        text-align:center;
    }
    #routeJerseys .kit-v9-page .ring-cap b { color:var(--kit-v9-primary); }
    #routeJerseys .kit-v9-page .stack-block { padding:6px 20px 16px; }
    #routeJerseys .kit-v9-page .stk-row {
        display:grid;
        grid-template-columns:60px minmax(0,1fr) 96px;
        gap:12px;
        align-items:center;
        padding:6.5px 0;
    }
    #routeJerseys .kit-v9-page .stk-row .lb {
        color:var(--kit-v9-ink);
        font-size:12.5px;
        font-weight:600;
    }
    #routeJerseys .kit-v9-page .stk-row .tr {
        display:flex;
        height:14px;
        border-radius:4px;
        background:var(--kit-v9-none);
        overflow:hidden;
    }
    #routeJerseys .kit-v9-page .stk-row .tr i { display:block;height:100%; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-released { background:#2563EB; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-leaked { background:#C05236; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-info { background:#B98A1D; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-concept { background:#5D7A8C; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-fake { background:#8A8578; }
    #routeJerseys .kit-v9-page .stk-row .tr .is-other { background:#6B7F8D; }
    #routeJerseys .kit-v9-page .stk-row .vl {
        color:var(--kit-v9-ink2);
        font-size:11px;
        text-align:right;
        font-variant-numeric:tabular-nums;
        white-space:nowrap;
    }
    #routeJerseys .kit-v9-page .stk-row .vl b { color:var(--kit-v9-ink); }
    #routeJerseys .kit-v9-page .rank { padding:6px 20px 14px; }
    #routeJerseys .kit-v9-page .rank-row {
        display:grid;
        grid-template-columns:22px minmax(0,1fr) 100px 26px;
        gap:10px;
        align-items:center;
        padding:6.5px 0;
        border-bottom:1px solid #E4EEF9;
    }
    #routeJerseys .kit-v9-page .rank-row:last-child { border-bottom:none; }
    #routeJerseys .kit-v9-page .rank-row .no {
        color:var(--kit-v9-ink3);
        font-size:11.5px;
        font-weight:700;
    }
    #routeJerseys .kit-v9-page .rank-row.top .no { color:var(--kit-v9-primary); }
    #routeJerseys .kit-v9-page .rank-row .nm {
        min-width:0;
        color:var(--kit-v9-ink);
        font-size:12.5px;
        font-weight:600;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
    }
    #routeJerseys .kit-v9-page .rank-row .nm small {
        margin-left:5px;
        color:var(--kit-v9-ink3);
        font-size:10px;
        font-weight:400;
    }
    #routeJerseys .kit-v9-page .rank-row .tr {
        height:8px;
        border-radius:3px;
        background:var(--kit-v9-bg);
        overflow:hidden;
    }
    #routeJerseys .kit-v9-page .rank-row .tr i {
        display:block;
        height:100%;
        border-radius:3px;
        background:var(--kit-v9-primary);
    }
    #routeJerseys .kit-v9-page .rank-row .ct {
        color:var(--kit-v9-ink);
        font-size:12.5px;
        font-weight:700;
        text-align:right;
        font-variant-numeric:tabular-nums;
    }
    #routeJerseys .kit-v9-page .news-item {
        display:block;
        margin:0 12px;
        padding:12px 8px;
        border-top:1px solid var(--kit-v9-line);
        color:inherit;
        text-decoration:none;
    }
    #routeJerseys .kit-v9-page .news-item .news-title {
        display:block;
        color:var(--kit-v9-ink);
        font-size:12.5px;
        line-height:1.55;
        font-weight:600;
    }
    #routeJerseys .kit-v9-page a.news-item:hover .news-title { color:var(--kit-v9-primary); }
    #routeJerseys .kit-v9-page .news-meta {
        display:flex;
        align-items:center;
        gap:7px;
        margin-top:7px;
        color:var(--kit-v9-ink2);
        font-size:11px;
    }
    #routeJerseys .kit-v9-page .news-meta i,
    #routeJerseys .kit-v9-page .legend i {
        flex:0 0 auto;
        width:6px;
        height:6px;
        border-radius:50%;
        background:#E2E8F0;
    }
    #routeJerseys .kit-v9-page i.is-released,
    #routeJerseys .kit-v9-page .dot.is-released { background:#2563EB; }
    #routeJerseys .kit-v9-page i.is-leaked,
    #routeJerseys .kit-v9-page .dot.is-leaked { background:#C05236; }
    #routeJerseys .kit-v9-page i.is-info,
    #routeJerseys .kit-v9-page .dot.is-info { background:#B98A1D; }
    #routeJerseys .kit-v9-page i.is-concept,
    #routeJerseys .kit-v9-page .dot.is-concept { background:#5D7A8C; }
    #routeJerseys .kit-v9-page i.is-fake,
    #routeJerseys .kit-v9-page .dot.is-fake { background:#8A8578; }
    #routeJerseys .kit-v9-page i.is-pending,
    #routeJerseys .kit-v9-page .dot.is-pending { background:#E2E8F0; }
    #routeJerseys .kit-v9-page .legend {
        display:flex;
        flex-wrap:wrap;
        gap:7px 15px;
        padding:14px 20px 16px;
        border-top:1px solid var(--kit-v9-line);
    }
    #routeJerseys .kit-v9-page .legend span {
        display:flex;
        align-items:center;
        gap:6px;
        color:var(--kit-v9-ink2);
        font-size:11px;
    }
    #routeJerseys .kit-v9-page .legend i { width:8px;height:8px; }
    #routeJerseys .kit-v9-page .mx-tools {
        display:flex;
        align-items:center;
        gap:13px;
        padding:4px 20px 14px;
        flex-wrap:wrap;
    }
    #routeJerseys .kit-v9-page .pills {
        display:flex;
        gap:7px;
        flex-wrap:wrap;
    }
    #routeJerseys .kit-v9-page .pill {
        appearance:none;
        display:flex;
        align-items:center;
        gap:6px;
        padding:6px 14px;
        border:1.5px solid var(--kit-v9-line2);
        border-radius:999px;
        background:#fff;
        color:var(--kit-v9-ink2);
        font:inherit;
        font-size:12.5px;
        line-height:1.55;
        cursor:pointer;
        transition:all .15s;
    }
    #routeJerseys .kit-v9-page .pill .n {
        color:var(--kit-v9-ink3);
        font-size:10.5px;
        font-variant-numeric:tabular-nums;
    }
    #routeJerseys .kit-v9-page .pill:hover { border-color:var(--kit-v9-primary);color:var(--kit-v9-primary); }
    #routeJerseys .kit-v9-page .pill.on { border-color:var(--kit-v9-primary);background:var(--kit-v9-primary);color:#fff; }
    #routeJerseys .kit-v9-page .pill.on .n { color:rgba(255,255,255,.75); }
    #routeJerseys .kit-v9-page .tchips {
        display:flex;
        gap:5px;
        margin-left:auto;
    }
    #routeJerseys .kit-v9-page .tchip {
        appearance:none;
        width:26px;
        height:26px;
        padding:0;
        border:1.5px solid var(--kit-v9-line2);
        border-radius:8px;
        background:#fff;
        color:var(--kit-v9-ink2);
        font:inherit;
        font-size:11.5px;
        font-weight:700;
        cursor:pointer;
    }
    #routeJerseys .kit-v9-page .tchip.on { border-color:var(--kit-v9-ink);background:var(--kit-v9-ink);color:#fff; }
    #routeJerseys .kit-v9-page .sw {
        display:flex;
        align-items:center;
        gap:7px;
        color:var(--kit-v9-ink2);
        font-size:12.5px;
        cursor:pointer;
        user-select:none;
    }
    #routeJerseys .kit-v9-page .sw input {
        width:14px;
        height:14px;
        accent-color:var(--kit-v9-primary);
        cursor:pointer;
    }
    #routeJerseys .kit-v9-page .mx-sum {
        display:flex;
        gap:18px;
        margin:0 20px 6px;
        padding:11px 16px;
        border-radius:10px;
        background:var(--kit-v9-bg);
        color:var(--kit-v9-ink2);
        font-size:12px;
        flex-wrap:wrap;
    }
    #routeJerseys .kit-v9-page .mx-sum b {
        color:var(--kit-v9-ink);
        font-variant-numeric:tabular-nums;
    }
    #routeJerseys .kit-v9-page .mx-scroll {
        max-width:100%;
        padding:0 8px 10px;
        overflow-x:auto;
        overscroll-behavior-inline:contain;
    }
    #routeJerseys .kit-v9-page table.kits {
        width:100%;
        min-width:600px;
        border-collapse:collapse;
    }
    #routeJerseys .kit-v9-page .kits th {
        padding:12px 4px 8px;
        color:var(--kit-v9-ink3);
        font-size:10.5px;
        font-weight:500;
        text-align:center;
    }
    #routeJerseys .kit-v9-page .kits th:first-child {
        padding-left:14px;
        text-align:left;
    }
    #routeJerseys .kit-v9-page .kits td {
        padding:11px 4px;
        border-bottom:1px solid #E4EEF9;
        text-align:center;
    }
    #routeJerseys .kit-v9-page .kits tbody tr:not(.tier-row):hover { background:var(--kit-v9-bg); }
    #routeJerseys .kit-v9-page .kits .team {
        padding-left:14px;
        text-align:left;
    }
    #routeJerseys .kit-v9-page .kits .team .cn {
        color:var(--kit-v9-ink);
        font-size:13px;
        font-weight:600;
    }
    #routeJerseys .kit-v9-page .kits .team .en {
        color:var(--kit-v9-ink3);
        font-size:10px;
    }
    #routeJerseys .kit-v9-page .tier-row td {
        padding:10px 14px;
        background:var(--kit-v9-primary-soft);
        color:var(--kit-v9-primary);
        font-size:12px;
        font-weight:700;
        text-align:left;
    }
    #routeJerseys .kit-v9-page .tier-row .desc {
        margin-left:10px;
        color:var(--kit-v9-ink2);
        font-weight:400;
    }
    #routeJerseys .kit-v9-page .tier-row .cnt {
        float:right;
        color:var(--kit-v9-ink2);
        font-weight:400;
    }
    #routeJerseys .kit-v9-page .dot {
        display:inline-block;
        width:10px;
        height:10px;
        border-radius:50%;
    }
    #routeJerseys .kit-v9-page .dot.none {
        width:4px;
        height:4px;
        background:#CBD5E1;
    }
    #routeJerseys .kit-v9-page .dotlink {
        appearance:none;
        display:inline-flex;
        padding:5px;
        border:0;
        border-radius:50%;
        background:transparent;
        line-height:0;
        cursor:pointer;
    }
    #routeJerseys .kit-v9-page .dotlink:hover,
    #routeJerseys .kit-v9-page .dotlink:focus-visible {
        outline:none;
        box-shadow:0 0 0 3px rgba(37,99,235,.15);
    }
    #routeJerseys .kit-v9-page .empty {
        padding:38px;
        color:var(--kit-v9-ink3);
        font-size:13px;
        text-align:center;
    }
    #routeJerseys .kit-v9-page footer {
        margin-top:24px;
        color:var(--kit-v9-ink3);
        font-size:11.5px;
        text-align:center;
    }
    #routeJerseys .kit-v9-page footer a {
        color:var(--kit-v9-primary);
        text-decoration:none;
    }
    /* Loading and legacy fallbacks remain blue only inside the jerseys route. */
    #routeJerseys .kit-status-chip.is-released,
    #routeJerseys .kit-status-pill.is-released { background:#EFF6FF; color:#1D4ED8; }
    #routeJerseys .kit-league-stat.is-released strong { color:#2563EB; }
    #routeJerseys .kit-progress-track span,
    #routeJerseys .kit-league-scanner-meter i { background:linear-gradient(90deg,#60A5FA,#2563EB); }
    #routeJerseys .kit-metric-spark i,
    #routeJerseys .kit-metric-card.is-released .kit-metric-spark i { background:#60A5FA; }
    #routeJerseys .kit-metric-card.is-covered strong,
    #routeJerseys .kit-metric-card.is-released strong { color:#2563EB; }
    #routeJerseys .kit-trend-legend .is-new,
    #routeJerseys .kit-trend-stack .is-new,
    #routeJerseys .kit-status-distribution-row.is-released b,
    #routeJerseys .kit-overview-legend-row.is-released span::before,
    #routeJerseys .kit-ops-status-legend .is-released span::before,
    #routeJerseys .kit-ops-update-list span i.is-released { background:#2563EB; }
    @media (max-width:1100px) {
        #routeJerseys .kit-v9-page .kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
        #routeJerseys .kit-v9-page .gridA,
        #routeJerseys .kit-v9-page .gridB { grid-template-columns:minmax(0,1fr); }
    }
    @media (max-width:768px) {
        #routeJerseys .kit-v9-page { padding:0 16px 32px; }
        #routeJerseys .kit-v9-page .topbar .r {
            width:100%;
            margin-left:54px;
        }
        #routeJerseys .kit-v9-page .card-h,
        #routeJerseys .kit-v9-page .mx-tools { padding-left:16px;padding-right:16px; }
        #routeJerseys .kit-v9-page .hbars,
        #routeJerseys .kit-v9-page .stack-block,
        #routeJerseys .kit-v9-page .rank { padding-left:16px;padding-right:16px; }
        #routeJerseys .kit-v9-page .tchips { margin-left:0; }
        #routeJerseys .kit-v9-page .sw { margin-left:auto; }
    }
    @media (max-width:520px) {
        #routeJerseys .kit-v9-page { padding-left:12px;padding-right:12px; }
        #routeJerseys .kit-v9-page .topbar { align-items:flex-start; }
        #routeJerseys .kit-v9-page .topbar .r { margin-left:0;gap:6px; }
        #routeJerseys .kit-v9-page .tag { padding:5px 9px;font-size:10.5px; }
        #routeJerseys .kit-v9-page .kpis { grid-template-columns:minmax(0,1fr);gap:10px; }
        #routeJerseys .kit-v9-page .kpi { min-height:112px; }
        #routeJerseys .kit-v9-page .hbar-row { grid-template-columns:74px minmax(72px,1fr) 86px;gap:8px; }
        #routeJerseys .kit-v9-page .hbar-row .lb { font-size:11.5px; }
        #routeJerseys .kit-v9-page .stk-row { grid-template-columns:44px minmax(0,1fr) 62px;gap:8px; }
        #routeJerseys .kit-v9-page .rank-row { grid-template-columns:18px minmax(0,1fr) 62px 20px;gap:7px; }
        #routeJerseys .kit-v9-page .mx-sum { margin-left:12px;margin-right:12px;gap:9px 13px; }
        #routeJerseys .kit-v9-page .tier-row .desc { display:none; }
    }

    /* Live Intel */
    .intel-panel { background: var(--card-bg); border-radius: 16px; padding: 20px; margin-bottom: 28px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); border: 1px solid var(--border); }
    .intel-panel-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: 16px; }
    .intel-panel-title { font-size: 24px; font-weight: 900; margin: 0; }
    .intel-panel-sub { font-size: 13px; color: var(--text-sub); margin-top: 6px; }
    .intel-actions { display: flex; gap: 10px; flex-wrap: wrap; }
    .intel-chip-row { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
    .intel-chip { display: inline-flex; align-items: center; padding: 6px 12px; border-radius: 999px; background: #EFF6FF; color: #1D4ED8; font-size: 12px; font-weight: 700; border: 1px solid #BFDBFE; }
    .intel-hero { display: grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 18px; align-items:start; }
    .intel-hero-card { position: relative; height: 228px; border-radius: 16px; overflow: hidden; background: #111827; }
    .intel-hero-card img { width: 100%; height: 100%; object-fit: cover; opacity: 0.76; }
    .intel-hero-card::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,18,33,0.08) 0%, rgba(11,18,33,0.92) 100%); }
    .intel-hero-copy { position: absolute; left: 20px; right: 20px; bottom: 18px; z-index: 2; color: #FFF; }
    .intel-hero-kicker { display: inline-flex; padding: 5px 10px; border-radius: 999px; background: rgba(225,29,72,0.92); font-size: 12px; font-weight: 800; margin-bottom: 10px; }
    .intel-hero-title { font-size: 30px; line-height: 1.15; font-weight: 900; margin: 0 0 8px 0; }
    .intel-hero-desc { color: rgba(255,255,255,0.82); font-size: 13px; line-height: 1.6; margin: 0; max-width: 720px; }
    .intel-side-cards { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
    .intel-side-card { background: #F9FAFB; border: 1px solid var(--border); border-radius: 14px; padding: 14px; min-height: 102px; }
    .intel-side-card h4 { margin: 0 0 6px 0; font-size: 15px; font-weight: 800; }
    .intel-side-card p { margin: 0; font-size: 12px; color: var(--text-sub); line-height: 1.6; }
    .intel-side-list { display:grid; gap:8px; margin-top:10px; }
    .intel-side-list span { display:block; font-size:12px; line-height:1.6; color:#334155; }
    .intel-source-badges { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
    .intel-source-badge { padding: 5px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; background: #F3F4F6; color: #374151; border: 1px solid var(--border); }
    .intel-body { border-top: 1px solid var(--border); padding-top: 18px; }
    .intel-html { color: var(--text-main); line-height: 1.75; }
    .intel-html .live-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 18px; }
    .intel-html .live-card { border: 1px solid var(--border); border-radius: 14px; padding: 14px; background: #FFF; }
    .intel-html .live-card:nth-child(6n+1) { background: #F3EEE8; border-color: #E3D6CA; }
    .intel-html .live-card:nth-child(6n+2) { background: #EEF3EC; border-color: #D4E2D0; }
    .intel-html .live-card:nth-child(6n+3) { background: #EEF1F6; border-color: #D7DFEA; }
    .intel-html .live-card:nth-child(6n+4) { background: #F5F0E9; border-color: #E7DCCD; }
    .intel-html .live-card:nth-child(6n+5) { background: #EEF4F1; border-color: #D5E5DD; }
    .intel-html .live-card:nth-child(6n+6) { background: #F4EEF5; border-color: #E2D6E6; }
    .intel-html .live-card:nth-child(6n+1) { background: #F3EEE8; border-color: #E3D6CA; }
    .intel-html .live-card:nth-child(6n+2) { background: #EEF3EC; border-color: #D4E2D0; }
    .intel-html .live-card:nth-child(6n+3) { background: #EEF1F6; border-color: #D7DFEA; }
    .intel-html .live-card:nth-child(6n+4) { background: #F5F0E9; border-color: #E7DCCD; }
    .intel-html .live-card:nth-child(6n+5) { background: #EEF4F1; border-color: #D5E5DD; }
    .intel-html .live-card:nth-child(6n+6) { background: #F4EEF5; border-color: #E2D6E6; }
    .intel-html .live-card h4 { margin: 0 0 8px 0; font-size: 15px; line-height: 1.45; }
    .intel-html .live-card p { margin: 0; font-size: 13px; color: var(--text-sub); }
    .intel-html table { width: 100%; border-collapse: collapse; background: #FFF; border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
    .intel-html th, .intel-html td { padding: 14px 12px; border-bottom: 1px solid var(--border); border-right: 1px solid var(--border); vertical-align: top; font-size: 13px; line-height: 1.7; }
    .intel-html th:last-child, .intel-html td:last-child { border-right: none; }
    .intel-html tr:last-child td { border-bottom: none; }
    .intel-html th { background: #F9FAFB; color: var(--text-sub); font-weight: 800; white-space: nowrap; }
    .intel-html a { color: var(--brand); text-decoration: underline; }
    .intel-placeholder { display: flex; min-height: 220px; align-items: center; justify-content: center; text-align: center; border: 1px dashed var(--border); border-radius: 14px; background: #FCFCFD; color: var(--text-sub); padding: 24px; }
    .selection-toolbar { position: sticky; top: 76px; z-index: 20; display: none; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; padding: 12px 14px; border-radius: 12px; background: #0F172A; color: #FFF; box-shadow: 0 10px 24px rgba(15,23,42,0.15); }
    .selection-toolbar strong { font-size: 14px; }
    .selection-toolbar span { font-size: 12px; color: rgba(255,255,255,0.74); }
    .selection-toolbar .toolbar-actions { display: flex; gap: 10px; flex-wrap: wrap; }
    .check-col { width: 44px; text-align: center; }
    .inline-thumb { width: 84px; height: 58px; object-fit: cover; border-radius: 10px; background: #E5E7EB; }
    .inline-thumb.is-logo-thumb { object-fit: contain; object-position: center; background: #FFF; padding: 6px; }
    .jersey-cell { min-width: 250px; }
    .jersey-inline-box { margin-top: 8px; border: 1px solid var(--border); border-radius: 14px; background: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); padding: 10px 12px; display: grid; gap: 8px; }
    .jersey-inline-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
    .jersey-inline-title { font-size: 12px; font-weight: 800; color: #0F172A; line-height: 1.4; }
    .jersey-inline-state { font-size: 11px; color: #64748B; white-space: nowrap; }
    .jersey-inline-meta, .jersey-inline-note { font-size: 12px; color: #64748B; line-height: 1.7; }
    .jersey-keyword-badges { display: flex; flex-wrap: nowrap; gap: 6px; overflow-x: auto; white-space: nowrap; scrollbar-width: thin; padding-bottom: 2px; }
    .jersey-keyword-badge { display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; border: 1px solid #D8E0EA; background: #F8FAFC; color: #334155; font-size: 12px; font-weight: 700; }
    .jersey-keyword-badge.kind { background: #E8F1FF; border-color: #C5D6F7; color: #1D4ED8; }
    .jersey-keyword-badge.pattern { background: #F3E8FF; border-color: #E0C9FF; color: #7C3AED; }
    .jersey-keyword-badge.color-red { background: #FDE8E8; border-color: #F5C2C7; color: #B42318; }
    .jersey-keyword-badge.color-blue { background: #E7F0FF; border-color: #C7DAF8; color: #1D4ED8; }
    .jersey-keyword-badge.color-green { background: #E8F5EC; border-color: #C9E4D2; color: #15803D; }
    .jersey-keyword-badge.color-yellow { background: #FFF7DB; border-color: #F2E2A4; color: #A16207; }
    .jersey-keyword-badge.color-orange { background: #FFF0E1; border-color: #F6D0AD; color: #C2410C; }
    .jersey-keyword-badge.color-purple { background: #F3E8FF; border-color: #E4D1FF; color: #7C3AED; }
    .jersey-keyword-badge.color-black { background: #E5E7EB; border-color: #D1D5DB; color: #111827; }
    .jersey-keyword-badge.color-white { background: #FFFFFF; border-color: #D1D5DB; color: #475569; }
    .jersey-keyword-badge.color-gold { background: #FFF8D6; border-color: #EFD88B; color: #A16207; }
    .jersey-progress { width: 100%; height: 6px; border-radius: 999px; overflow: hidden; background: #E5E7EB; }
    .jersey-progress.is-hidden { display: none; }
    .jersey-progress > span { display: block; height: 100%; width: 0%; background: linear-gradient(90deg, #60A5FA, #2563EB); transition: width 0.25s ease; }
    .jersey-gallery { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 2px; scrollbar-width: thin; }
    .jersey-gallery img { width: 68px; min-width: 68px; height: 68px; object-fit: cover; border-radius: 12px; border: 1px solid var(--border); background: #F8FAFC; cursor: zoom-in; }
    .jersey-inline-error { border: 1px solid #FECACA; background: #FEF2F2; color: #B91C1C; border-radius: 10px; padding: 8px 10px; font-size: 12px; line-height: 1.6; }
    .jersey-predict-btn { align-self: flex-start; display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; background: #EFF6FF; border: 1px solid #BFDBFE; color: #1D4ED8; font-size: 12px; font-weight: 800; white-space: nowrap; }
    .jersey-predict-btn:hover { text-decoration: none; background: #DBEAFE; }
    .jersey-inline-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: nowrap; }
    .jersey-inline-disclaimer { font-size: 11px; color: #94A3B8; white-space: nowrap; }
    img[src*="manual_assets/team_logos/"] { object-fit: contain; object-position: center; background: #FFF; padding: 8px; }
    .python-card { background:#FFF; border:1px solid var(--border); border-radius:14px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,0.05); }
    .python-card img { width:100%; height:164px; object-fit:cover; display:block; }
    .python-card img.player-media { object-fit: contain; object-position: center top; background: linear-gradient(180deg, #FFFFFF 0%, #F3F4F6 100%); padding: 14px; }
    .python-card img.entity-media { object-fit: contain; object-position: center; background: #FFFFFF; padding: 12px; }
    .python-card-body { padding:14px; }
    .python-card-meta { font-size:11px; color:#6B7280; margin-bottom:8px; }
    .python-card-title { margin:0 0 8px 0; font-size:15px; font-weight:800; line-height:1.4; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; word-break:break-word; min-height:2.8em; }
    .python-card-desc { font-size:12px; color:var(--text-sub); line-height:1.7; margin:0; }
    .python-section-title { font-size: 15px; font-weight: 900; margin: 0 0 12px 0; color: #111827; }
    .python-rank-grid { display:flex; gap:14px; overflow-x:auto; padding-bottom:12px; scroll-snap-type:x mandatory; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; }
    .python-rank-grid::-webkit-scrollbar { height:6px; }
    .python-rank-grid::-webkit-scrollbar-thumb { background:#CBD5E1; border-radius:4px; }
    .python-rank-grid > .python-card { flex: 0 0 calc(33.333% - 10px); scroll-snap-align:start; min-width:280px; }
    .python-rank-grid + .python-section-title { margin-top: 18px; }
    .detail-overlay { position: fixed; inset: 0; background: rgba(2, 6, 23, 0.46); display: none; z-index: 260; }
    .detail-drawer { position: absolute; top: 0; right: 0; width: min(520px, 96vw); height: 100vh; background: #fff; box-shadow: -18px 0 40px rgba(2,6,23,0.18); display: flex; flex-direction: column; }
    .detail-head { padding: 18px 20px; border-bottom: 1px solid var(--border); display:flex; justify-content: space-between; gap:12px; align-items:flex-start; }
    .detail-head h3 { margin: 0; font-size: 22px; font-weight: 900; }
    .detail-head p { margin: 6px 0 0 0; font-size: 12px; color: var(--text-sub); }
    .detail-body { padding: 20px; overflow: auto; display:grid; gap:16px; }
    .detail-stat-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; }
    .detail-stat { background:#F8FAFC; border:1px solid var(--border); border-radius:12px; padding:12px; }
    .detail-stat strong { display:block; font-size:12px; color:#64748B; margin-bottom:6px; }
    .detail-stat span { font-size:16px; font-weight:800; color:#0F172A; }
    .detail-pill-row { display:flex; gap:8px; flex-wrap:wrap; }
    .detail-pill { padding:6px 10px; border-radius:999px; background:#EFF6FF; color:#1D4ED8; border:1px solid #BFDBFE; font-size:12px; font-weight:700; }
    .kit-detail-drawer { display:grid; gap:16px; min-width:0; }
    .kit-image-carousel { display:grid; gap:10px; min-width:0; }
    .kit-image-frame { width:100%; aspect-ratio: 4 / 3; border:1px solid #DDE6F2; border-radius:14px; background:linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); overflow:hidden; display:flex; align-items:center; justify-content:center; }
    .kit-image-frame img { width:100%; height:100%; object-fit:contain; display:block; }
    .kit-image-caption { color:#64748B; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
    .kit-image-controls { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#64748B; font-size:12px; font-weight:800; }
    .kit-image-control { border:1px solid #DDE6F2; border-radius:10px; min-height:32px; background:#F8FAFC; color:#1D4ED8; padding:0 10px; font-size:12px; font-weight:900; cursor:pointer; }
    .kit-image-control:hover { background:#EFF6FF; border-color:#BFDBFE; }
    .kit-image-thumbs { display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:8px; }
    .kit-image-thumb { aspect-ratio:1; padding:0; border:1px solid #DDE6F2; border-radius:10px; background:#FFFFFF; overflow:hidden; cursor:pointer; }
    .kit-image-thumb.active { border-color:#2563EB; box-shadow:0 0 0 2px rgba(37,99,235,0.14); }
    .kit-image-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
    .kit-image-empty { border:1px dashed #CBD5E1; border-radius:14px; background:#F8FAFC; padding:18px; display:grid; gap:6px; color:#64748B; line-height:1.65; }
    .kit-image-empty strong { color:#0F172A; font-size:14px; }
    .kit-image-empty span { font-size:12px; }
    .kit-detail-drawer-meta { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:10px; }
    .kit-detail-drawer-meta div { min-width:0; border:1px solid #DDE6F2; border-radius:12px; background:#F8FAFC; padding:11px 12px; }
    .kit-detail-drawer-meta span { display:block; color:#64748B; font-size:11px; font-weight:800; margin-bottom:6px; }
    .kit-detail-drawer-meta strong { display:block; color:#0F172A; font-size:13px; line-height:1.45; overflow-wrap:anywhere; }
    .kit-detail-source-link { width:100%; min-height:42px; }
    .metric-grid { display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:14px; margin-bottom:18px; }
    .metric-card { background:#FFF; border:1px solid var(--border); border-radius:14px; padding:16px; }
    .metric-label { font-size:12px; color:var(--text-sub); margin-bottom:8px; }
    .metric-value { font-size:28px; line-height:1; font-weight:900; color:#0F172A; margin-bottom:6px; }
    .metric-desc { font-size:12px; color:#64748B; line-height:1.6; }
    .db-scope-tabs { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:18px; }
    .db-scope-tab { border:1px solid var(--border); border-radius:999px; background:#FFF; color:#0F172A; padding:8px 14px; font-size:13px; font-weight:700; }
    .db-scope-tab.active { background:#1D4ED8; color:#FFF; border-color:#1D4ED8; }
    .db-layout { display:grid; grid-template-columns: minmax(0, 1fr); gap:18px; }
    .db-main-column { min-width:0; }
    .db-card { background:#FFF; border:1px solid var(--border); border-radius:16px; padding:18px; margin-bottom:18px; }
    .db-card:last-child { margin-bottom:0; }
    .db-card h3 { margin:0 0 12px 0; font-size:18px; font-weight:900; }
    .db-card p { margin:0; font-size:13px; color:var(--text-sub); line-height:1.75; }
    .db-file-list { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:10px; }
    .db-file-item { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:#F8FAFC; }
    .db-file-item > div { min-width:0; }
    .db-file-item strong { display:block; font-size:14px; color:#0F172A; margin-bottom:4px; }
    .db-file-item span { display:block; font-size:12px; color:#64748B; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .db-table { width:100%; border-collapse: collapse; }
    .db-table th, .db-table td { padding:12px 10px; border-bottom:1px solid var(--border); font-size:13px; text-align:left; vertical-align:top; }
    .db-table th { color:#64748B; background:#F8FAFC; font-weight:800; }
    .db-table tr:last-child td { border-bottom:none; }
    .db-table button { border:none; background:none; color:#1D4ED8; font-weight:700; padding:0; }
    .db-code { margin:0; padding:14px; border-radius:12px; background:#0F172A; color:#E2E8F0; font-size:12px; line-height:1.7; overflow:auto; white-space:pre-wrap; word-break:break-word; }
    .db-sell-points { display:grid; gap:10px; margin-top:14px; }
    .db-sell-point { border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:12px 14px; font-size:13px; color:#334155; line-height:1.7; }
    .db-inline-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
    .db-player-gallery { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:14px; }
    .roster-release-shell { display:grid; gap:18px; min-width:0; }
    .roster-release-shell > * { min-width:0; max-width:100%; }
    .roster-release-meta-row { display:grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap:10px; }
    .roster-release-meta-item { border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:12px 14px; min-width:0; }
    .roster-release-meta-item span, .roster-release-field-item span, .roster-release-stat span, .roster-release-card-facts span { display:block; font-size:11px; color:#64748B; margin-bottom:6px; font-weight:700; }
    .roster-release-meta-item strong, .roster-release-field-item strong, .roster-release-stat strong { display:block; font-size:14px; color:#0F172A; line-height:1.35; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-release-section-head h3 { margin:0 0 7px 0; font-size:18px; font-weight:900; color:#0F172A; }
    .roster-release-section-head p { margin:0; font-size:13px; color:#64748B; line-height:1.7; }
    .roster-release-field-grid { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:10px; }
    .roster-release-field-item { border:1px solid var(--border); border-radius:12px; background:#FFF; padding:12px 14px; min-width:0; }
    .roster-release-monitor { display:grid; gap:14px; min-width:0; max-width:100%; }
    .roster-release-section-head { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; }
    .roster-release-section-head > div { min-width:0; }
    .roster-release-section-head > span { flex:0 0 auto; border:1px solid #BFDBFE; background:#EFF6FF; color:#1D4ED8; border-radius:999px; padding:6px 10px; font-size:12px; font-weight:900; }
    .roster-release-filters { display:flex; flex-wrap:wrap; gap:10px; }
    .roster-release-filter { display:inline-flex; align-items:center; gap:8px; min-height:38px; border:1px solid var(--border); border-radius:999px; background:#FFF; color:#0F172A; padding:0 13px; font-size:13px; font-weight:800; box-shadow:0 1px 2px rgba(15,23,42,0.03); }
    .roster-release-filter strong { display:inline-flex; align-items:center; justify-content:center; min-width:24px; height:24px; padding:0 7px; border-radius:999px; background:#E2E8F0; color:#334155; font-size:12px; }
    .roster-release-filter.active { background:#1D4ED8; color:#FFF; border-color:#1D4ED8; box-shadow:0 10px 18px rgba(29,78,216,0.16); }
    .roster-release-filter.active strong { background:rgba(255,255,255,0.22); color:#FFF; }
    .roster-release-stat-row { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:10px; }
    .roster-release-stat { border:1px solid #DBE4F0; border-radius:12px; background:#FFF; padding:14px 16px; box-shadow:0 8px 18px rgba(15,23,42,0.04); min-width:0; }
    .roster-release-stat strong { font-size:24px; line-height:1; }
    .roster-release-stat.is-positive strong { color:#16A34A; }
    .roster-release-stat.is-warning strong { color:#D97706; }
    .roster-transfer-board { display:grid; grid-template-columns:minmax(230px, 0.5fr) minmax(0, 1.5fr); gap:14px; align-items:start; }
    .roster-transfer-spotlight { position:sticky; top:14px; display:grid; gap:12px; border:1px solid #BFD7FF; border-radius:16px; background:linear-gradient(160deg, #0F172A 0%, #1D4ED8 62%, #0EA5E9 100%); color:#FFF; padding:16px; overflow:hidden; box-shadow:0 18px 36px rgba(29,78,216,0.20); }
    .roster-transfer-spotlight::after { content:''; position:absolute; inset:auto -24px -38px -24px; height:90px; background:repeating-linear-gradient(90deg, rgba(255,255,255,0.16) 0 1px, transparent 1px 42px); transform:skewY(-7deg); pointer-events:none; }
    .roster-transfer-spotlight > * { position:relative; z-index:1; }
    .roster-transfer-spotlight-kicker { color:#BFDBFE; font-size:11px; font-weight:900; letter-spacing:0.04em; }
    .roster-transfer-spotlight h4 { margin:0; font-size:24px; line-height:1.15; font-weight:900; }
    .roster-transfer-spotlight p { margin:0; color:#DDEBFF; font-size:12px; line-height:1.5; font-weight:800; overflow-wrap:anywhere; }
    .roster-transfer-spotlight-score { display:flex; align-items:flex-end; gap:8px; }
    .roster-transfer-spotlight-score strong { font-size:38px; line-height:0.95; font-weight:900; }
    .roster-transfer-spotlight-score span { color:#DDEBFF; font-size:12px; font-weight:900; }
    .roster-transfer-spotlight-list { display:grid; gap:7px; }
    .roster-transfer-spotlight-list div { display:grid; grid-template-columns:34px minmax(0,1fr) auto; align-items:center; gap:8px; min-height:32px; border:1px solid rgba(255,255,255,0.18); border-radius:10px; background:rgba(255,255,255,0.10); padding:0 8px; }
    .roster-transfer-spotlight-list span, .roster-transfer-spotlight-list em { color:#DDEBFF; font-size:11px; font-style:normal; font-weight:900; }
    .roster-transfer-spotlight-list strong { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:900; }
    .roster-release-card-grid { display:grid; grid-template-columns:1fr; gap:10px; min-width:0; max-width:100%; }
    .roster-release-card { display:grid; grid-template-columns:minmax(230px, 1fr) minmax(136px, auto) minmax(150px, 0.6fr) minmax(150px, auto); gap:12px; align-items:center; min-width:0; border:1px solid #DBE4F0; border-radius:14px; background:#FFF; padding:12px; box-shadow:0 8px 18px rgba(15,23,42,0.05); cursor:pointer; transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
    .roster-release-card:hover { border-color:#93C5FD; box-shadow:0 14px 28px rgba(37,99,235,0.10); transform:translateY(-1px); }
    .roster-release-card.expanded { border-color:#93C5FD; box-shadow:0 18px 34px rgba(37,99,235,0.13); }
    .roster-release-card-head { display:flex; align-items:center; gap:10px; min-width:0; }
    .roster-release-team-id { min-width:0; }
    .roster-transfer-rank { display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:12px; background:#EFF6FF; color:#1D4ED8; font-size:12px; font-weight:900; flex:0 0 auto; }
    .roster-release-card h4 { margin:0 0 5px 0; color:#0F172A; font-size:17px; font-weight:900; line-height:1.25; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-release-card p { margin:0; color:#64748B; font-size:13px; line-height:1.45; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-release-expand-mark { display:inline-flex; align-items:center; justify-content:center; min-height:28px; border:1px solid #BFDBFE; border-radius:999px; background:#EFF6FF; color:#1D4ED8; padding:0 10px; font-size:12px; font-weight:900; white-space:nowrap; }
    .roster-release-card-tags { display:flex; flex-wrap:wrap; gap:8px; }
    .roster-release-card-tags span { display:inline-flex; align-items:center; min-height:26px; border:1px solid #BFDBFE; border-radius:999px; background:#EFF6FF; color:#1D4ED8; padding:0 10px; font-size:12px; font-weight:800; }
    .roster-release-card-facts { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:10px; }
    .roster-release-card-facts div { min-width:0; border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:10px 12px; }
    .roster-release-card-facts strong { display:block; color:#0F172A; font-size:15px; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-transfer-balance { display:flex; width:100%; min-width:110px; height:10px; border-radius:999px; overflow:hidden; background:#E2E8F0; }
    .roster-transfer-balance span.is-in { flex:0 0 var(--transfer-in, 50%); background:linear-gradient(90deg, #16A34A, #22C55E); }
    .roster-transfer-balance span.is-out { flex:1 1 auto; background:linear-gradient(90deg, #F59E0B, #EA580C); }
    .roster-release-card-transfer-line { display:flex; flex-wrap:wrap; gap:8px; color:#64748B; font-size:12px; line-height:1.5; font-weight:800; }
    .roster-release-card-transfer-line span { display:inline-flex; align-items:center; min-height:24px; border:1px solid #E2E8F0; border-radius:999px; background:#F8FAFC; padding:0 9px; white-space:nowrap; }
    .roster-release-card-transfer-line span.is-positive { border-color:#BBF7D0; background:#F0FDF4; color:#15803D; }
    .roster-release-card-transfer-line span.is-warning { border-color:#FED7AA; background:#FFF7ED; color:#C2410C; }
    .roster-release-card-foot { min-height:34px; display:flex; align-items:center; }
    .roster-release-link { display:inline-flex; align-items:center; justify-content:center; min-height:34px; border-radius:10px; background:#0F172A; color:#FFF; padding:0 12px; font-size:12px; font-weight:800; }
    .roster-transfer-hint { display:none; color:#64748B; font-size:12px; font-weight:800; white-space:normal !important; overflow:visible !important; text-overflow:clip !important; }
    .roster-transfer-detail { display:grid; gap:12px; border-top:1px solid #E2E8F0; padding-top:13px; cursor:default; grid-column:1 / -1; }
    .roster-transfer-subsection { display:grid; gap:8px; min-width:0; }
    .roster-transfer-subsection-title { display:flex; align-items:center; justify-content:space-between; gap:10px; color:#0F172A; font-size:13px; font-weight:900; }
    .roster-transfer-subsection-title span { display:inline-flex; align-items:center; justify-content:center; min-width:26px; height:26px; border-radius:999px; background:#E0F2FE; color:#0369A1; padding:0 8px; font-size:12px; }
    .roster-transfer-row { display:grid; gap:8px; min-width:0; border:1px solid #E2E8F0; border-radius:12px; background:#F8FAFC; padding:11px; }
    .roster-transfer-row-main { display:grid; gap:4px; min-width:0; }
    .roster-transfer-row-main strong { color:#0F172A; font-size:14px; line-height:1.25; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-transfer-row-main span { color:#64748B; font-size:12px; font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-transfer-row-meta { display:flex; flex-wrap:wrap; gap:7px; min-width:0; }
    .roster-transfer-row-meta span, .roster-transfer-link { display:inline-flex; align-items:center; min-height:26px; border:1px solid #DBE4F0; border-radius:999px; background:#FFF; color:#475569; padding:0 9px; font-size:12px; font-weight:800; }
    .roster-transfer-link { border-color:#BFDBFE; background:#EFF6FF; color:#1D4ED8; text-decoration:none; }
    .roster-transfer-empty { border:1px dashed #CBD5E1; border-radius:12px; color:#64748B; background:#F8FAFC; padding:11px; font-size:12px; font-weight:800; }
    .roster-transfer-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; border-top:1px solid #E2E8F0; padding-top:11px; color:#64748B; font-size:12px; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 { gap:16px; padding:2px; color:#102343; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; min-height:126px; padding:24px 26px; border:1px solid #D5E7FF; border-radius:18px; overflow:hidden; background:linear-gradient(135deg, rgba(255,255,255,.96), rgba(235,245,255,.94)), repeating-linear-gradient(115deg, transparent 0 42px, rgba(37,99,235,.045) 42px 43px); box-shadow:0 14px 32px rgba(30,82,156,.08); position:relative; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero::after { content:''; position:absolute; width:260px; height:260px; right:-72px; top:-150px; border:1px solid rgba(37,99,235,.13); border-radius:50%; box-shadow:0 0 0 28px rgba(37,99,235,.035), 0 0 0 56px rgba(37,99,235,.022); pointer-events:none; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero > * { position:relative; z-index:1; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero span { display:block; margin-bottom:7px; color:#2563EB; font-size:12px; font-weight:900; letter-spacing:.08em; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero h3 { margin:0; color:#102343; font-size:30px; line-height:1.16; font-weight:950; letter-spacing:.01em; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero p { max-width:650px; margin:9px 0 0; color:#59708F; font-size:13px; line-height:1.7; font-weight:700; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero time { flex:0 0 auto; border:1px solid #C9DEFF; border-radius:10px; background:rgba(255,255,255,.82); color:#35557E; padding:9px 11px; font-size:12px; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpis { display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:14px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi { display:flex; align-items:center; gap:13px; min-width:0; min-height:112px; padding:17px; border:1px solid #D9E8FC; border-radius:16px; background:linear-gradient(155deg, #FFF, #F7FBFF); box-shadow:0 9px 20px rgba(36,94,168,.07); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi-mark { flex:0 0 auto; width:46px; height:46px; border-radius:50%; background:radial-gradient(circle at 32% 30%, #FFF 0 15%, #DBEAFF 16% 46%, #BBD8FF 47% 100%); position:relative; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi-mark::after { content:''; position:absolute; inset:15px; border:2px solid #2563EB; border-radius:4px; transform:rotate(45deg); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi.is-positive .roster-command-kpi-mark::after { border-color:#16804A; border-width:0 0 3px 3px; border-radius:0; transform:rotate(-45deg); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi.is-warning .roster-command-kpi-mark::after { border-color:#C26B16; border-width:0 0 3px 3px; border-radius:0; transform:rotate(45deg); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi > div { min-width:0; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi span:not(.roster-command-kpi-mark), #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#607795; font-size:12px; font-style:normal; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi strong { display:block; margin:2px 0 4px; color:#12305D; font-size:30px; line-height:1; font-weight:950; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi.is-positive strong { color:#16804A; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi.is-warning strong { color:#C26B16; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-top-grid { display:grid; grid-template-columns:minmax(230px,.85fr) minmax(360px,1.45fr) minmax(230px,.85fr); gap:14px; align-items:stretch; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-bottom-grid { display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr); gap:14px; align-items:stretch; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-panel { min-width:0; border:1px solid #D9E8FC; border-radius:15px; background:rgba(255,255,255,.94); padding:16px; box-shadow:0 10px 24px rgba(36,94,168,.06); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:13px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-panel-head h4, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-head h4 { margin:0; color:#12305D; font-size:16px; line-height:1.3; font-weight:950; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-panel-head p, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-head p { margin:5px 0 0; color:#7184A0; font-size:11px; line-height:1.55; font-weight:700; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-leagues .roster-release-filters { gap:6px; margin-bottom:13px; overflow-x:auto; flex-wrap:nowrap; padding-bottom:3px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-leagues .roster-release-filter { flex:0 0 auto; min-height:31px; padding:0 9px; font-size:11px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-leagues .roster-release-filter strong { min-width:20px; height:20px; padding:0 5px; font-size:10px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-list { display:grid; gap:10px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row > div { min-width:0; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row strong { display:block; color:#18375F; font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row span { display:block; margin-top:3px; color:#8192AB; font-size:10px; font-weight:700; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row b { color:#1D4ED8; font-size:16px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row i { grid-column:1 / -1; display:block; height:6px; overflow:hidden; border-radius:999px; background:#E8F1FD; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row i::after { content:''; display:block; width:var(--activity-width); height:100%; border-radius:inherit; background:linear-gradient(90deg, #2563EB, #60A5FA); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-league-row.active strong { color:#1D4ED8; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow { display:grid; grid-template-rows:auto 1fr auto; min-height:348px; overflow:hidden; background:radial-gradient(circle at center, #F8FBFF 0 35%, #FFF 75%); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-stage { position:relative; min-height:250px; margin:0 auto; width:min(100%, 540px); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-stage::before { content:''; position:absolute; width:56%; aspect-ratio:1; top:50%; left:50%; border:1px dashed #BBD8FF; border-radius:50%; transform:translate(-50%,-50%); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core { position:absolute; top:50%; left:50%; z-index:2; display:grid; place-items:center; align-content:center; width:118px; aspect-ratio:1; border:7px solid rgba(191,219,254,.75); border-radius:50%; background:radial-gradient(circle at 30% 25%, #4F9BFF, #1D4ED8 62%, #123C8F); color:#FFF; box-shadow:0 0 0 8px rgba(219,234,254,.85), 0 18px 30px rgba(37,99,235,.25); transform:translate(-50%,-50%); text-align:center; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core span, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core em { font-size:10px; font-style:normal; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core strong { font-size:33px; line-height:1; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node { position:absolute; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 8px; min-width:104px; padding:8px 10px; border:1px solid #D4E5FB; border-radius:11px; background:#FFF; box-shadow:0 7px 16px rgba(36,94,168,.08); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node span { overflow:hidden; color:#29496F; font-size:11px; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node strong { grid-row:1 / span 2; grid-column:2; align-self:center; color:#1D4ED8; font-size:18px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node em { color:#8292A9; font-size:10px; font-style:normal; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-1 { top:2%; left:50%; transform:translateX(-50%); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-2 { top:30%; right:1%; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-3 { bottom:3%; right:11%; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-4 { bottom:3%; left:11%; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-5 { top:30%; left:1%; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-legend { display:flex; justify-content:space-between; gap:10px; color:#70839E; font-size:10px; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-legend b { color:#1D4ED8; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team-list { display:grid; gap:8px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix button { border:1px solid #D8E7FA; background:#F8FBFF; color:#1A385F; cursor:pointer; font:inherit; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team { display:grid; grid-template-columns:24px minmax(0,1fr) auto auto; align-items:center; gap:8px; width:100%; min-height:42px; padding:7px 8px; border-radius:10px; text-align:left; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team:first-child { border-color:#3B82F6; background:linear-gradient(120deg, #145DE3, #4A9DFA); color:#FFF; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team > span { display:grid; place-items:center; width:22px; height:22px; border-radius:7px; background:#E6F0FF; color:#1D4ED8; font-size:11px; font-weight:900; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team:first-child > span { background:rgba(255,255,255,.22); color:#FFF; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team strong { min-width:0; overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team em { color:#7286A3; font-size:10px; font-style:normal; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team:first-child em { color:rgba(255,255,255,.8); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-team b { font-size:20px; line-height:1; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-list { display:grid; gap:7px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row { display:grid; grid-template-columns:minmax(90px,1.35fr) minmax(64px,.85fr) auto auto auto; gap:8px; align-items:center; width:100%; min-height:39px; padding:7px 9px; border-radius:9px; text-align:left; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row strong { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row span, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row em { color:#7588A4; font-size:10px; font-style:normal; font-weight:800; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row b { color:#1D4ED8; font-size:15px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-scroll { overflow-x:auto; padding-bottom:2px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid { display:grid; grid-template-columns:86px repeat(5, minmax(92px, 1fr)); min-width:580px; overflow:hidden; border:1px solid #DBE8F8; border-radius:10px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid > * { min-height:38px; padding:7px; border:0; border-right:1px solid #E4EEF9; border-bottom:1px solid #E4EEF9; text-align:center; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid > *:nth-child(6n) { border-right:0; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid > *:nth-last-child(-n + 6) { border-bottom:0; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid .roster-command-matrix-corner, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid > strong { display:flex; align-items:center; justify-content:center; background:#F2F7FE; color:#476586; font-size:11px; font-weight:900; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid button { overflow:hidden; font-size:11px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid button.is-positive, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid strong.is-positive { color:#15803D; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid button.is-warning, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid strong.is-warning { color:#C2410C; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid button.is-net, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-matrix-grid strong.is-net { color:#1D4ED8; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-section { display:grid; gap:12px; border:1px solid #D9E8FC; border-radius:16px; background:linear-gradient(180deg, #FFF, #F8FBFF); padding:17px; box-shadow:0 10px 24px rgba(36,94,168,.06); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-head > span { flex:0 0 auto; border:1px solid #BFDBFE; border-radius:999px; background:#EFF6FF; color:#1D4ED8; padding:6px 10px; font-size:12px; font-weight:900; }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-card-board { display:grid; grid-template-columns:minmax(0,1fr); }
    #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-empty { color:#7184A0; font-size:12px; font-weight:700; }
    #rosterReleaseRouteContent .player-roster-layout-v1 [data-roster-command-team-key]:focus-visible, #rosterReleaseRouteContent .player-roster-layout-v1 .roster-release-filter:focus-visible { outline:3px solid rgba(37,99,235,.35); outline-offset:2px; }
    #rosterReleaseRouteContent .player-roster-layout-v1 [data-roster-command-team-key]:hover { border-color:#93C5FD; box-shadow:0 6px 15px rgba(37,99,235,.10); transform:translateY(-1px); }
    .roster-confirm-card { overflow:hidden; }
    .roster-confirm-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:14px; }
    .roster-confirm-head h3 { margin:0 0 6px 0; }
    .roster-confirm-head p { margin:0; }
    .roster-confirm-tabs { margin-bottom:14px; }
    .roster-confirm-notes { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px 0; }
    .roster-confirm-notes span { display:inline-flex; align-items:center; border:1px solid var(--border); border-radius:999px; background:#F8FAFC; color:#475569; padding:6px 10px; font-size:12px; font-weight:700; line-height:1.35; }
    .roster-confirm-summary { display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:10px; margin-bottom:14px; }
    .roster-confirm-stat { border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:10px 12px; min-width:0; }
    .roster-confirm-stat span { display:block; font-size:11px; color:#64748B; margin-bottom:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .roster-confirm-stat strong { display:block; font-size:15px; color:#0F172A; line-height:1.25; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .roster-confirm-league-filters { margin:0 0 14px 0; }
    .roster-confirm-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:14px; }
    .roster-confirm-toolbar input { width:min(360px, 100%); border:1px solid var(--border); border-radius:10px; padding:10px 12px; font-size:13px; color:#0F172A; background:#FFF; }
    .roster-confirm-toolbar span { font-size:12px; color:#64748B; white-space:nowrap; }
    .roster-confirm-grid { display:grid; grid-template-columns: minmax(0, 1.75fr) minmax(280px, 0.75fr); gap:16px; align-items:start; max-width:100%; overflow-x:hidden; }
    .roster-confirm-grid > * { min-width:0; max-width:100%; box-sizing:border-box; }
    .roster-confirm-table-wrap { max-height:560px; overflow:auto; border:1px solid var(--border); border-radius:12px; }
    .roster-confirm-table th { position:sticky; top:0; z-index:1; }
    .roster-confirm-table tr[data-roster-team-key] { cursor:pointer; }
    .roster-confirm-table tr[data-roster-team-key]:hover td, .roster-confirm-table tr.selected td { background:#EFF6FF; }
    .roster-status { display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:5px 9px; font-size:12px; font-weight:800; white-space:nowrap; }
    .roster-status.ok { color:#166534; background:#DCFCE7; border:1px solid #BBF7D0; }
    .roster-status.review { color:#92400E; background:#FEF3C7; border:1px solid #FDE68A; }
    .roster-muted { color:#94A3B8; font-size:12px; }
    .roster-detail-card { border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:14px; min-height:220px; min-width:0; max-width:100%; overflow-x:hidden; box-sizing:border-box; }
    .roster-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; min-width:0; }
    .roster-detail-head > div { min-width:0; }
    .roster-detail-head h4 { margin:0 0 6px 0; font-size:17px; font-weight:900; color:#0F172A; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-detail-head p { margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-detail-facts { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:8px; margin-bottom:10px; }
    .roster-detail-facts div { border:1px solid var(--border); border-radius:10px; background:#FFF; padding:9px 10px; min-width:0; }
    .roster-detail-facts span { display:block; color:#64748B; font-size:11px; font-weight:700; margin-bottom:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .roster-detail-facts strong { display:block; color:#0F172A; font-size:13px; line-height:1.3; overflow-wrap:anywhere; }
    .roster-detail-links { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
    .roster-detail-links a { display:inline-flex; align-items:center; justify-content:center; min-height:30px; border-radius:9px; background:#0F172A; color:#FFF; padding:0 10px; font-size:12px; font-weight:800; }
    .roster-warning-line { border:1px solid #FDE68A; background:#FFFBEB; color:#92400E; border-radius:10px; padding:9px 11px; font-size:12px; line-height:1.6; margin-bottom:12px; }
    .roster-player-list { display:grid; gap:8px; max-height:500px; overflow-y:auto; overflow-x:hidden; min-width:0; max-width:100%; }
    .roster-player-row { display:grid; grid-template-columns: minmax(0, 1.1fr) minmax(44px, 0.45fr) minmax(0, 1fr) minmax(40px, auto); gap:8px; align-items:center; padding:10px 11px; border:1px solid var(--border); border-radius:10px; background:#FFF; min-width:0; max-width:100%; box-sizing:border-box; overflow:hidden; }
    .roster-player-row strong { font-size:13px; color:#0F172A; line-height:1.35; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .roster-player-row span, .roster-player-row a { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; color:#64748B; line-height:1.45; }
    .player-photo-card { border:1px solid var(--border); background:#FFF; border-radius:16px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,0.05); cursor:pointer; }
    .player-photo-card img { width:100%; height:232px; object-fit:contain; object-position:center top; background:linear-gradient(180deg, #FFFFFF 0%, #F3F4F6 100%); padding:16px; }
    .player-photo-card-body { padding:14px; }
    .player-photo-card h4 { margin:0 0 6px 0; font-size:15px; font-weight:900; line-height:1.4; }
    .player-photo-card p { margin:0; font-size:12px; color:#64748B; line-height:1.7; }
    .profile-shell { display:grid; gap:18px; }
    .profile-hero { display:grid; grid-template-columns: minmax(360px, 560px) minmax(0, 1fr); gap:18px; align-items:start; }
    .profile-hero-media { display:grid; grid-template-columns: minmax(160px, 0.72fr) minmax(0, 1.28fr); gap:14px; align-items:stretch; }
    .profile-media-card { position:relative; overflow:hidden; border-radius:18px; border:1px solid var(--border); background:#F8FAFC; }
    .profile-media-card img { width:100%; display:block; background:#E5E7EB; }
    .profile-photo-avatar { height:300px; object-fit:contain; object-position:center top; padding:18px; background:linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); }
    .profile-photo-entity { height:300px; object-fit:contain; object-position:center; padding:20px; background:linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); }
    .profile-photo-action { height:280px; object-fit:cover; object-position:center 28%; }
    .profile-media-label { position:absolute; left:12px; top:12px; z-index:2; display:inline-flex; align-items:center; padding:5px 10px; border-radius:999px; background:rgba(15,23,42,0.82); color:#FFF; font-size:11px; font-weight:800; }
    .profile-title { font-size:32px; font-weight:900; line-height:1.1; margin:0 0 10px 0; color:#0F172A; }
    .profile-sub { font-size:14px; color:#475569; line-height:1.8; margin:0 0 14px 0; }
    .profile-section { background:#FFF; border:1px solid var(--border); border-radius:16px; padding:18px; }
    .profile-section h3 { margin:0 0 12px 0; font-size:18px; font-weight:900; }
    .profile-related-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap:12px; }
    .profile-related-card { border:1px solid var(--border); border-radius:14px; background:#F8FAFC; overflow:hidden; cursor:pointer; }
    .profile-related-card img { width:100%; height:188px; object-fit:contain; object-position:center top; background:linear-gradient(180deg, #FFFFFF 0%, #F3F4F6 100%); padding:14px; }
    .profile-related-card div { padding:12px; }
    .profile-related-card strong { display:block; font-size:13px; color:#0F172A; margin-bottom:6px; }
    .profile-related-card span { font-size:12px; color:#64748B; line-height:1.6; }
    .authority-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; }
    .authority-card { border:1px solid var(--border); border-radius:14px; background:#F8FAFC; padding:14px; }
    .authority-card h4 { margin:0 0 8px 0; font-size:14px; font-weight:900; color:#0F172A; }
    .authority-card p { margin:0; font-size:13px; color:#475569; line-height:1.75; }
    .authority-links { display:grid; gap:10px; margin-top:12px; }
    .authority-link { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid var(--border); border-radius:12px; background:#FFF; }
    .authority-link span { font-size:12px; color:#64748B; }
    .settings-overlay { position: fixed; inset: 0; background: rgba(2, 6, 23, 0.42); display: none; z-index: 230; }
    .settings-panel { position:absolute; top:0; right:0; width:min(860px, 94vw); height:100vh; background:#FFF; box-shadow:-18px 0 40px rgba(2,6,23,0.18); display:flex; flex-direction:column; }
    .settings-body { flex:1; overflow:auto; padding:20px; display:grid; gap:16px; }
    .settings-card { border:1px solid var(--border); border-radius:14px; padding:16px; background:#FFF; }
    .settings-card h4 { margin:0 0 12px 0; font-size:16px; font-weight:900; color:#0F172A; }
    .settings-card p { margin:0 0 12px 0; font-size:12px; color:#64748B; line-height:1.7; }
    .settings-grid { display:grid; gap:10px; }
    .settings-grid.two { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .settings-input, .settings-select { width:100%; border:1px solid var(--border); border-radius:10px; padding:10px 12px; font-size:13px; color:#0F172A; background:#FFF; }
    .settings-label { font-size:12px; font-weight:700; color:#475569; margin-bottom:6px; display:block; }
    .settings-foot { padding:16px 20px; border-top:1px solid var(--border); display:flex; justify-content:flex-end; gap:10px; background:#FFF; }
    .status-bar { width:100%; height:8px; background:#E5E7EB; border-radius:999px; overflow:hidden; }
    .status-bar > span { display:block; height:100%; background:#2563EB; border-radius:999px; }
    .wb-title-card, .wb-image-card, .wb-video-card { border:1px solid var(--border); border-radius:14px; background:#FFF; padding:14px; margin-bottom:12px; }
    .wb-title-head, .wb-task-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:10px; }
    .wb-title-badge, .wb-task-badge { display:inline-flex; padding:4px 10px; border-radius:999px; background:#DBEAFE; color:#1D4ED8; font-size:12px; font-weight:800; }
    .wb-title-parts { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
    .wb-title-part { min-width:140px; flex:1 1 140px; }
    .wb-title-part label { display:block; font-size:11px; color:#64748B; margin-bottom:6px; }
    .wb-title-main, .wb-task-main { display:flex; align-items:flex-start; gap:10px; }
    .wb-task-caption { font-size:12px; color:#64748B; margin-top:8px; line-height:1.7; }
    .wb-task-preview { width:160px; height:120px; border-radius:12px; overflow:hidden; flex-shrink:0; background:#F3F4F6; display:flex; align-items:center; justify-content:center; }
    .wb-task-preview img, .wb-task-preview video { width:100%; height:100%; object-fit:cover; }
    .wb-script-box { border:1px solid var(--border); border-radius:12px; background:#F8FAFC; padding:12px; font-size:13px; line-height:1.8; color:#0F172A; white-space:pre-wrap; }
    .wb-structured-grid { display:grid; gap:12px; margin-top:14px; }
    .wb-structured-card { background:#F8FAFC; border:1px solid var(--border); border-radius:12px; padding:12px 14px; }
    .wb-structured-card strong { font-size:12px; color:#64748B; display:block; margin-bottom:8px; }
    .wb-structured-card p { margin:0; font-size:13px; color:#0F172A; line-height:1.8; }

    /* Drawer & Assistant */
    .workbench-overlay, .assistant-overlay { position: fixed; inset: 0; background: rgba(2, 6, 23, 0.42); display: none; z-index: 220; }
    .workbench-drawer { position: absolute; top: 0; right: 0; width: min(1180px, 92vw); height: 100vh; background: #FFF; box-shadow: -18px 0 40px rgba(2, 6, 23, 0.18); display: flex; flex-direction: column; }
    .drawer-head { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 16px 20px; border-bottom: 1px solid var(--border); background: #FFF; }
    .drawer-head h3 { margin: 0; font-size: 18px; font-weight: 900; }
    .drawer-head p { margin: 4px 0 0 0; font-size: 12px; color: var(--text-sub); }
    .drawer-frame, .assistant-frame { width: 100%; background: #FFF; }
    .drawer-frame { flex: 1; overflow: auto; }
    .workbench-embed-shell { display:grid; gap:16px; }
    .workbench-embed-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
    .workbench-mode-chips { display:flex; gap:10px; flex-wrap:wrap; }
    .workbench-mode-chip { border:1px solid #BFDBFE; background:#EFF6FF; color:#1D4ED8; border-radius:999px; padding:8px 14px; font-size:12px; font-weight:800; }
    .workbench-mode-chip.active { background:#1D4ED8; color:#FFF; border-color:#1D4ED8; }
    .workbench-embed-frame { width:100%; min-height:860px; border:1px solid var(--border); border-radius:16px; background:#FFF; box-shadow: inset 0 1px 0 rgba(255,255,255,0.7); }
    .route-breadcrumb { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:18px; padding:12px 16px; border:1px solid var(--border); border-radius:14px; background:linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%); }
    .route-breadcrumb strong { font-size:13px; color:#0F172A; }
    .route-breadcrumb span { font-size:12px; color:#64748B; }
    .assistant-toggle { position: fixed; right: 24px; bottom: 24px; z-index: 210; min-width: 92px; height: 56px; padding: 0 18px; border-radius: 999px; border: none; background: linear-gradient(135deg, #1D4ED8, #2563EB); color: #FFF; font-weight: 900; font-size: 14px; box-shadow: 0 18px 34px rgba(29, 78, 216, 0.28); user-select:none; touch-action:none; }
    .assistant-toggle.dragging { cursor: grabbing; box-shadow: 0 24px 44px rgba(29, 78, 216, 0.34); }
    .assistant-panel { position: absolute; right: 24px; bottom: 96px; width: min(1120px, calc(100vw - 32px)); height: min(840px, calc(100vh - 120px)); background: #FFF; border-radius: 18px; box-shadow: 0 24px 48px rgba(2, 6, 23, 0.24); overflow: hidden; display: flex; flex-direction: column; }
    .assistant-head { display: flex; justify-content: space-between; align-items: center; padding: 14px 16px; background: #0B1221; color: #FFF; }
    .assistant-head h3 { margin: 0; font-size: 16px; font-weight: 900; }
    .assistant-head p { margin: 4px 0 0 0; font-size: 11px; color: rgba(255,255,255,0.72); }
    .assistant-frame { flex: 1; min-height: 0; }
    .assistant-embed-shell, .history-embed-shell { height:100%; display:grid; grid-template-rows:auto auto 1fr; gap:14px; padding:16px; background:#F8FAFC; }
    .assistant-embed-frame { width:100%; height:100%; min-height:0; overflow:hidden; border:1px solid var(--border); border-radius:16px; background:#FFF; }
    .history-embed-frame { width:100%; height:100%; min-height:620px; border:1px solid var(--border); border-radius:16px; background:#FFF; }
    .assistant-msg { margin-bottom: 12px; display:flex; }
    .assistant-msg.user { justify-content:flex-end; }
    .assistant-bubble { max-width: 84%; padding: 12px 14px; border-radius: 14px; font-size: 13px; line-height: 1.7; white-space: pre-wrap; }
    .assistant-msg.assistant .assistant-bubble.wide { max-width: min(1080px, calc(100vw - 220px)); width: min(1080px, calc(100vw - 220px)); }
    .assistant-msg.user .assistant-bubble { background:#1D4ED8; color:#FFF; border-bottom-right-radius:6px; }
    .assistant-msg.assistant .assistant-bubble { background:#FFF; color:#111827; border:1px solid var(--border); border-bottom-left-radius:6px; }
    .history-overlay { position: fixed; inset: 0; background: rgba(2, 6, 23, 0.42); display: none; z-index: 225; }
    .history-drawer { position: absolute; top: 0; right: 0; width: min(1180px, 92vw); height: 100vh; background: #FFF; box-shadow: -18px 0 40px rgba(2, 6, 23, 0.18); display: flex; flex-direction: column; }

    @media (max-width: 1024px) {
        .layout-columns { grid-template-columns: minmax(0, 1fr); }
        .layout-columns > .content-left { min-width: 0; }
        .news-grid { grid-template-columns: repeat(2, 1fr); }
        .news-card.featured { grid-column: 1 / 3; }
        .intel-hero { grid-template-columns: 1fr; }
        .intel-html .live-summary { grid-template-columns: 1fr; }
        
        .metric-grid { grid-template-columns: 1fr 1fr; }
        .db-layout { grid-template-columns: 1fr; }
        .roster-release-meta-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .roster-confirm-grid { grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.9fr); }
        .db-file-list { grid-template-columns: 1fr; }
        .roster-release-field-grid { grid-template-columns: 1fr; }
        .roster-confirm-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .kit-metric-grid { grid-template-columns: 1fr 1fr; }
        .kit-overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .kit-tier-scanner-layout { grid-template-columns: 1fr; }
        .kit-tier-rail { grid-template-columns: repeat(4, minmax(0, 1fr)); }
        .kit-scanner-side { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .roster-transfer-board { grid-template-columns: 1fr; }
        .roster-transfer-spotlight { position:relative; top:auto; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-top-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow { grid-column:1 / -1; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-bottom-grid { grid-template-columns:1fr; }
        .kit-team-group-header, .kit-team-group-card { grid-template-columns: 1fr; gap: 10px; }
        .kit-team-group-header span:first-child { display: none; }
        .kit-team-detail-header, .kit-team-detail-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .profile-hero, .profile-related-grid, .db-player-gallery { grid-template-columns: 1fr 1fr; }
        .profile-hero-media { grid-template-columns: 1fr; }
        .settings-grid.two { grid-template-columns: 1fr; }
        .header-main-bar { flex-direction: column; align-items: stretch; gap: 16px; }
        .header-left, .header-right { justify-content: flex-start; width: 100%; gap: 12px; }
        .search-box { width: 100%; }
        .search-box:focus { width: 100%; }
        .authority-grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 768px) {
        .kit-metric-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
        .news-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
        .news-card.featured { grid-column: 1 / 2; grid-row: 1 / 2; height: 300px; }
        .news-card.standard { height: 200px; }
        .topics-grid { grid-template-columns: 1fr; }
        .nav-menu { width:100%; max-width:100%; overflow-x: auto; padding-bottom: 4px; flex-wrap: nowrap; }
        #openJerseysBtn, #openRosterReleaseBtn, #openDatabaseBtn { flex: 1 1 120px; min-width: 0; padding: 0 12px; }
        .workbench-drawer { width: 100vw; }
        .assistant-panel { right: 10px; bottom: 82px; width: calc(100vw - 20px); height: calc(100vh - 110px); }
        
        .metric-grid, .db-layout, .roster-confirm-grid { grid-template-columns: 1fr; }
        .db-file-list { grid-template-columns: 1fr; }
        .roster-release-meta-row, .roster-release-stat-row, .roster-release-card-facts { grid-template-columns: 1fr; }
        .roster-release-card { grid-template-columns: 1fr; align-items: stretch; }
        .roster-release-card-head { align-items:flex-start; }
        .roster-release-card-grid { grid-template-columns: minmax(0, 1fr); }
        .roster-release-card { padding: 14px; }
        .roster-release-section-head { flex-direction:column; }
        .roster-release-filters { flex-wrap:nowrap; overflow-x:auto; padding-bottom:6px; }
        .roster-release-filter { flex:0 0 auto; }
        #rosterReleaseRouteContent .player-roster-layout-v1 { gap:12px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero { align-items:flex-start; padding:20px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero h3 { font-size:25px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-hero time { margin-top:2px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpis { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:9px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi { min-height:92px; padding:12px; gap:9px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi-mark { width:36px; height:36px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi-mark::after { inset:12px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-kpi strong { font-size:25px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-top-grid,
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-bottom-grid { grid-template-columns:1fr; gap:12px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-panel,
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-section { padding:13px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow { min-height:335px; grid-column:auto; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-stage { min-height:245px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core { width:101px; border-width:6px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-core strong { font-size:29px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node { min-width:86px; padding:6px 7px; gap:1px 5px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node span { font-size:10px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node strong { font-size:15px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node em { font-size:9px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-2 { right:0; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-5 { left:0; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-3 { right:3%; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-flow-node.node-4 { left:3%; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row { grid-template-columns:minmax(0, 1fr) auto auto auto; gap:5px; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-overview-row > span { display:none; }
        #rosterReleaseRouteContent .player-roster-layout-v1 .roster-command-detail-head { align-items:flex-start; }
        .roster-confirm-league-filters { flex-wrap:wrap; overflow-x:visible; padding-bottom:0; }
        .roster-confirm-league-filters .roster-release-filter { flex:1 1 calc(50% - 8px); justify-content:space-between; min-width:0; }
        .roster-confirm-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .roster-confirm-toolbar { align-items:stretch; flex-direction:column; }
        .roster-confirm-toolbar input { width:100%; }
        .roster-confirm-table-wrap { overflow:auto; }
        .roster-confirm-table { min-width:1080px; }
        .roster-player-row { grid-template-columns: minmax(0, 1fr) minmax(44px, auto); }
        .roster-player-row span:nth-child(3), .roster-player-row a, .roster-player-row .roster-muted { grid-column: 1 / -1; }
        .kit-metric-grid { grid-template-columns: 1fr; }
        .kit-overview-grid { grid-template-columns: 1fr; }
        .kit-recent-row { grid-template-columns: 1fr; align-items: flex-start; }
        .kit-league-head { align-items: flex-start; flex-direction: column; }
        .kit-tier-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px; }
        .kit-tier-tab { flex: 0 0 auto; }
        .kit-league-scanner-head { align-items:flex-start; flex-direction:column; }
        .kit-league-scanner-meter { width:100%; }
        .kit-league-scanner-meter strong { text-align:left; }
        .kit-tier-rail, .kit-scanner-side { grid-template-columns: 1fr 1fr; }
        .kit-tier-team-row { grid-template-columns: 1fr; }
        .kit-tier-kit-strip { grid-template-columns: 1fr 1fr; }
        .kit-tier-active-summary { align-items: flex-start; flex-direction: column; }
        .kit-tier-active-summary span { text-align: left; }
        .kit-tier-stack { padding: 14px; }
        .kit-tier-group-head { align-items: flex-start; flex-direction: column; }
        .kit-tier-table { min-width: 760px; }
        .detail-drawer { width: 100vw; }
        .kit-detail-drawer-meta { grid-template-columns: 1fr; }
        .kit-image-thumbs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .kit-team-group-header { display: none; }
        .kit-team-group-card { padding: 16px; }
        .kit-team-detail-header, .kit-team-detail-row { grid-template-columns: minmax(92px, 1fr) minmax(86px, 0.9fr) minmax(100px, 1fr) minmax(100px, 1fr) minmax(116px, 1fr) minmax(72px, auto); min-width: 720px; }
        .kit-team-detail-row { gap: 8px; align-items: center; }
        .profile-hero, .profile-related-grid, .db-player-gallery { grid-template-columns: 1fr; }
        .settings-panel { width:100vw; }
        .header-top-inner { flex-direction: column; gap: 10px; }
        .header-left { flex-direction: column; align-items: flex-start; max-width:100%; }
        .header-right { max-width:100%; }
        .intel-side-cards { grid-template-columns: 1fr; }
        .workbench-embed-frame { min-height: 720px; }
        .assistant-embed-frame { min-height: 0; }
        .history-embed-frame { min-height: 540px; }
        .history-drawer { width:100vw; }
        .history-dropdown-menu { right: -8px; width: min(94vw, 420px); }
    }
    @media (max-width: 1180px) {
        .kit-metric-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
        .kit-dashboard-league-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
        .kit-league-signal-board .kit-tier-scanner-layout { grid-template-columns: 1fr; }
        .kit-league-signal-board .kit-tier-rail { grid-template-columns: repeat(4, minmax(0, 1fr)); }
        .kit-overview-card { grid-template-columns: minmax(0, 0.9fr) minmax(280px, 1.1fr); align-items:start; }
        .kit-overview-card h4 { grid-column: 1 / -1; }
        .kit-latest-signals, .kit-all-signals-button { grid-column: 2; }
        .kit-overview-donut-row { grid-column: 1; grid-row: 2 / span 2; }
    }
    @media (max-width: 768px) {
        .kit-leak-board { padding:14px; border-radius:14px; }
        .kit-leak-board-head { flex-direction:column; }
        .kit-dashboard-grid { grid-template-columns:1fr; gap:12px; margin-top:14px; }
        .kit-dashboard-trend, .kit-dashboard-leagues, .kit-dashboard-latest { grid-column:auto; }
        .kit-dashboard-card { padding:13px; }
        .kit-dashboard-league-grid { grid-template-columns:1fr; }
        .kit-type-coverage-grid { grid-template-columns:1fr; }
        .kit-dashboard-change-row { grid-template-columns:1fr; gap:3px; }
        .kit-dashboard-change-row em { white-space:normal; }
        .kit-board-jersey-icon { width:44px; height:44px; }
        .kit-leak-board-title h3 { font-size:20px; }
        .kit-leak-view-toggle { width:100%; justify-content:space-between; }
        .kit-leak-board .kit-status-chip-row { flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
        .kit-leak-board .kit-status-chip { flex:0 0 auto; }
        .kit-change-filter-row { flex-wrap:nowrap; overflow-x:auto; padding-bottom:3px; }
        .kit-change-filter { flex:0 0 auto; }
        .kit-leak-board .kit-tier-tabs { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:8px; padding-bottom:10px; }
        .kit-leak-board .kit-tier-tab { flex:0 0 auto; min-width:184px; }
        .kit-league-signal-board .kit-tier-rail { grid-template-columns:1fr 1fr; }
        .kit-league-signal-board .kit-tier-rail-item { grid-template-columns:40px minmax(0, 1fr); gap:8px; min-height:68px; padding:10px; }
        .kit-league-signal-board .kit-tier-rail-item strong { width:34px; height:34px; font-size:18px; }
        .kit-league-signal-board .kit-tier-rail-item em { grid-column:2; font-size:12px; }
        .kit-matrix-panel { padding:10px; border-radius:14px; }
        .kit-matrix-grid { min-width:720px; grid-template-columns:minmax(154px, 1fr) repeat(var(--kit-type-count, 12), minmax(36px, 0.62fr)); }
        .kit-matrix-team-badge { width:30px; height:30px; }
        .kit-overview-card { grid-template-columns:1fr; }
        .kit-overview-card h4, .kit-latest-signals, .kit-all-signals-button, .kit-overview-donut-row { grid-column:auto; grid-row:auto; }
        .kit-overview-donut-row { grid-template-columns:106px minmax(0, 1fr); }
        .kit-overview-donut { width:100px; height:100px; }
        .kit-latest-signal { grid-template-columns:58px minmax(0, 1fr); }
        .kit-latest-signal .kit-status-pill { grid-column:2; justify-self:start; margin-top:3px; }
    }

    /* Player confirmation value-analysis layout V1: deliberately scoped to the module. */
    #rosterConfirmationModule .player-confirmation-layout-v1 { display:grid; gap:16px; padding:18px; border:1px solid #D7E6F8; border-radius:18px; background:linear-gradient(145deg, #F8FBFF 0%, #EEF6FF 52%, #FFFFFF 100%); color:#102A4C; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head { align-items:center; margin-bottom:0; padding:4px 2px 0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head-badge { display:grid; gap:4px; min-width:140px; margin-left:auto; padding:10px 13px; border:1px solid #CFE1F7; border-radius:12px; background:rgba(255,255,255,.78); text-align:right; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head-badge span { color:#6B83A0; font-size:10px; font-weight:800; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head-badge strong { color:#1657B8; font-size:13px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-summary { gap:12px; margin:0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-stat { border-color:#D2E2F5; background:rgba(255,255,255,.86); box-shadow:0 5px 16px rgba(37,99,235,.06); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-stat span { color:#6C83A0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-stat strong { color:#123E78; font-size:17px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-notes { margin:0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-notes span { border-color:#D2E2F5; background:#F5FAFF; color:#4D6B8E; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-toolbar { margin:0; padding:10px 12px; border:1px solid #D4E4F7; border-radius:12px; background:rgba(255,255,255,.72); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-toolbar input { border-color:#C7DCF5; box-shadow:0 2px 7px rgba(37,99,235,.04); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-toolbar input:focus-visible { outline:3px solid rgba(37,99,235,.24); outline-offset:1px; border-color:#3B82F6; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-grid { display:grid; grid-template-columns:minmax(250px,1.05fr) minmax(360px,1.65fr) minmax(260px,.95fr); gap:14px; align-items:start; overflow:visible; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-grid > * { min-width:0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-team-column, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis { min-height:250px; border:1px solid #D2E2F5; border-radius:14px; background:rgba(255,255,255,.9); box-shadow:0 8px 22px rgba(37,99,235,.06); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-team-column { overflow:hidden; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table-wrap { max-height:650px; overflow:auto; border:0; border-radius:14px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table { min-width:860px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table th { background:#F0F6FF; color:#527296; font-size:11px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table td { border-color:#E4EEF9; font-size:12px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table tr[data-roster-team-key]:hover td, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table tr.selected td { background:#EAF3FF; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table tr[data-roster-team-key]:focus-visible td { background:#EAF3FF; outline:2px solid #3B82F6; outline-offset:-2px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column { min-height:650px; padding:16px; background:linear-gradient(180deg,#FFFFFF,#F7FBFF); overflow:hidden; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-head { padding-bottom:12px; border-bottom:1px solid #E2ECF8; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-head h4 { color:#123E78; font-size:19px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-head p { color:#6B83A0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-facts div { border-color:#DCE9F8; background:#F8FBFF; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-links a, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-source { background:#1559BE; color:#FFF; box-shadow:0 5px 12px rgba(21,89,190,.16); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-links a:focus-visible, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-source:focus-visible, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table a:focus-visible { outline:3px solid rgba(37,99,235,.3); outline-offset:2px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-groups { display:grid; gap:12px; max-height:540px; overflow:auto; padding-right:2px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-group { display:grid; gap:8px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 2px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-heading h5 { margin:0; color:#254D7D; font-size:13px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-heading strong { display:grid; place-items:center; min-width:24px; height:22px; border-radius:999px; background:#E6F0FF; color:#1D5EC4; font-size:11px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card { display:flex; align-items:center; gap:8px; min-width:0; padding:8px; border:1px solid #DCE9F8; border-radius:11px; background:#FFF; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main { display:grid; min-width:0; gap:2px; flex:1; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main strong, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main span, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main em { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main strong { color:#173A67; font-size:12px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main span { color:#6D85A0; font-size:10px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-card-main em { color:#1D5EC4; font-size:11px; font-style:normal; font-weight:900; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-source { display:inline-flex; flex:0 0 auto; align-items:center; min-height:23px; padding:0 6px; border-radius:6px; font-size:10px; font-weight:800; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis { padding:14px; background:linear-gradient(180deg,#FFFFFF,#F4F9FF); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-head, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-section-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-head { padding-bottom:10px; border-bottom:1px solid #E0EBF8; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-head h4, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-section-head h5 { margin:0; color:#173A67; font-size:14px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-head span, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-section-head span { color:#7188A4; font-size:10px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; padding:12px 0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-stat { min-width:0; padding:9px; border:1px solid #DCE9F8; border-radius:10px; background:#FFF; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-stat span { display:block; margin-bottom:5px; color:#7188A4; font-size:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-stat strong { display:block; color:#163E75; font-size:15px; line-height:1.2; overflow-wrap:anywhere; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis-section { padding:12px 0 0; border-top:1px solid #E0EBF8; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-bars { display:grid; gap:10px; margin-top:12px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-bar { display:grid; gap:5px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-bar > div:first-child { display:flex; justify-content:space-between; gap:8px; color:#5B7696; font-size:11px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-bar strong { color:#173A67; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-track { height:7px; overflow:hidden; border-radius:999px; background:#E5EFFB; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-value-track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#1967D2,#62A4FF); }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-empty-state { margin-top:12px; padding:12px; border:1px dashed #B9D2EF; border-radius:10px; background:#F8FBFF; color:#7088A5; font-size:12px; line-height:1.6; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players { display:grid; gap:7px; margin:12px 0 0; padding:0; list-style:none; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li { display:grid; grid-template-columns:20px 30px minmax(0,1fr) auto; align-items:center; gap:7px; min-width:0; padding:6px 0; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-rank { display:grid; place-items:center; width:20px; height:20px; border-radius:6px; background:#E6F0FF; color:#1D5EC4; font-size:10px; font-weight:900; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li > div { display:grid; min-width:0; gap:2px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li strong, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li strong { color:#173A67; font-size:11px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li span { color:#7188A4; font-size:10px; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-top-players li b { color:#1D5EC4; font-size:11px; white-space:nowrap; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column a, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis a { text-decoration:none; }
    #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column .intel-placeholder, #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis .intel-placeholder { margin:0; padding:18px; }

    @media (max-width: 1280px) {
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-grid { grid-template-columns:minmax(230px,1fr) minmax(340px,1.35fr); }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis { grid-column:1 / -1; }
    }
    @media (max-width: 900px) {
      #rosterConfirmationModule .player-confirmation-layout-v1 { padding:14px; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-grid { grid-template-columns:1fr; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-analysis { grid-column:auto; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column { min-height:0; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-position-groups { max-height:none; overflow:visible; }
    }
    @media (max-width: 560px) {
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head { align-items:flex-start; flex-direction:column; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head-badge { width:100%; text-align:left; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-head h3 { font-size:21px; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-player-grid { grid-template-columns:1fr; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-table { min-width:860px; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-confirm-detail-column { padding:12px; }
      #rosterConfirmationModule .player-confirmation-layout-v1 .roster-detail-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    }
