.app-shell { width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 48px 0 72px; } .hero-panel, .scoreboard-card { position: relative; overflow: hidden; border: 1px solid var(--border); border-radius: 32px; box-shadow: var(--shadow); } .hero-panel { display: grid; gap: 28px; padding: 40px; margin-bottom: 28px; background: radial-gradient(circle at top right, rgba(255, 196, 0, 0.24), transparent 26%), linear-gradient(135deg, rgba(8, 47, 73, 0.94), rgba(10, 96, 84, 0.92)); color: #f9fbf4; } .hero-panel::after { content: ''; position: absolute; inset: auto -48px -64px auto; width: 220px; height: 220px; border-radius: 50%; background: rgba(255, 255, 255, 0.08); filter: blur(6px); } .hero-copy { position: relative; z-index: 1; max-width: 680px; } .eyebrow, .label, .team-tag { display: inline-flex; align-items: center; gap: 8px; letter-spacing: 0.18em; text-transform: uppercase; } .eyebrow { padding: 8px 14px; border-radius: 999px; color: #effce4; background: rgba(255, 255, 255, 0.12); font-size: 0.78rem; } .hero-text { max-width: 56ch; font-size: 1.08rem; color: rgba(249, 251, 244, 0.82); } .status-strip { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 12px; } .status-strip span { padding: 10px 14px; border-radius: 999px; background: rgba(10, 18, 24, 0.26); border: 1px solid rgba(255, 255, 255, 0.18); font-size: 0.92rem; } .scoreboard-card { padding: 28px; background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(242, 247, 239, 0.94)); } .board-header, .match-meta, .score-grid, .detail-grid { display: grid; gap: 16px; } .board-header { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; margin-bottom: 24px; } .match-meta { justify-content: end; grid-auto-flow: column; align-content: center; } .match-meta span { justify-self: end; padding: 10px 14px; border-radius: 999px; color: var(--panel-strong); background: rgba(11, 88, 73, 0.1); } .score-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 20px; } .team-card { padding: 24px; border-radius: 24px; background: rgba(255, 255, 255, 0.72); border: 1px solid rgba(9, 54, 45, 0.08); } .team-card-active { background: linear-gradient(180deg, rgba(11, 88, 73, 0.96), rgba(18, 130, 94, 0.96)); color: #f5fff8; } .team-card h3, .team-card p, .team-card strong { margin: 0; } .team-tag, .label { font-size: 0.78rem; color: var(--panel-soft); } .team-card-active .team-tag { color: rgba(245, 255, 248, 0.78); } .team-card h3 { margin-top: 10px; margin-bottom: 18px; font-size: 1.7rem; } .team-card strong { display: block; font-family: var(--mono); font-size: clamp(3.4rem, 8vw, 5.4rem); line-height: 0.95; color: var(--panel-strong); } .team-card-active strong { color: #ffffff; } .team-card p { margin-top: 18px; color: var(--panel-soft); } .team-card-active p { color: rgba(245, 255, 248, 0.82); } .detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .detail-grid > div { padding: 18px 20px; border-radius: 22px; background: rgba(246, 249, 244, 0.95); border: 1px solid rgba(14, 58, 48, 0.08); } .detail-grid p { margin-top: 10px; color: var(--panel-soft); } @media (max-width: 720px) { .app-shell { width: min(100% - 24px, 1120px); padding: 20px 0 40px; } .hero-panel, .scoreboard-card { border-radius: 24px; } .hero-panel { padding: 28px 22px; } .scoreboard-card { padding: 20px; } .board-header, .score-grid, .detail-grid { grid-template-columns: 1fr; } .match-meta { justify-content: start; grid-auto-flow: row; } .match-meta span { justify-self: start; } }