| |
| |
| |
| @import "brand/colors.css"; |
| @import "brand/wordmark.css"; |
|
|
| @font-face { |
| font-family: "Inter"; |
| src: url("brand/fonts/inter-variable-latin.woff2") format("woff2"); |
| font-weight: 100 900; font-style: normal; |
| font-display: swap; |
| } |
|
|
| :root { |
| --surface: #f6f7f9; |
| --accent: var(--mint-green-deep); |
| --maxw: 980px; |
| --gutter: clamp(1.1rem, 0.6rem + 2.2vw, 2.4rem); |
| } |
|
|
| * { box-sizing: border-box; } |
| body { |
| margin: 0; background: var(--paper); color: var(--ink); |
| font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; |
| font-size: clamp(1rem, 0.95rem + 0.25vw, 1.0625rem); line-height: 1.6; |
| -webkit-font-smoothing: antialiased; |
| } |
| img { max-width: 100%; display: block; } |
| a { color: var(--accent); text-underline-offset: 2px; } |
|
|
| |
| |
| |
| |
| .band-head { |
| --band-h: 4.5rem; |
| position: relative; overflow: hidden; background: var(--sdsu-yellow); |
| color: var(--sdsu-campanile); |
| display: grid; grid-template-columns: auto 1fr auto; |
| align-items: center; gap: clamp(1rem, 3vw, 2.5rem); |
| min-height: calc(var(--band-h) + 1.7rem); padding: 0.85rem clamp(1.1rem, 3vw, 2.4rem); |
| } |
| .band-head .art { |
| position: absolute; inset: 0; width: 100%; height: 100%; |
| object-fit: cover; object-position: center; z-index: 0; |
| } |
| .band-head .corner { position: absolute; top: 0; right: 0; width: 2rem; height: 2rem; z-index: 3; } |
| .lockup { display: flex; align-items: center; gap: 0.7rem; z-index: 2; } |
| .lockup .sdsu { height: calc(var(--band-h) * 0.92); width: auto; } |
| .lockup .mint { height: calc(var(--band-h) * 0.84); width: auto; } |
| .lockup .sep { width: 2px; align-self: stretch; background: var(--sdsu-campanile); opacity: 0.85; } |
| .band-head .qr { height: calc(var(--band-h) * 0.88); width: auto; z-index: 2; } |
| .band-center { position: relative; z-index: 2; text-align: center; min-width: 0; } |
| .band-title { |
| font-size: clamp(1.05rem, 0.7rem + 1.4vw, 1.6rem); |
| font-weight: 800; line-height: 1.14; margin: 0; letter-spacing: 0.1px; text-wrap: balance; |
| } |
| .band-affil { font-size: 0.78rem; font-weight: 600; opacity: 0.9; margin: 0.3rem 0 0; } |
|
|
| |
| main { max-width: var(--maxw); margin-inline: auto; padding: 2rem var(--gutter) 3rem; } |
| .lead { margin: 0 0 1.2rem; } |
| h2 { font-size: 1.15rem; margin: 2.2rem 0 0.7rem; line-height: 1.2; } |
|
|
| |
| .table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; } |
| .table-scroll:focus-visible, |
| pre:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; } |
| table { border-collapse: collapse; width: 100%; min-width: 30rem; font-variant-numeric: tabular-nums; } |
| caption { caption-side: top; text-align: left; font-size: 0.85rem; opacity: 0.75; padding-bottom: 0.5rem; } |
| th, td { padding: 0.5rem 0.9rem; border-bottom: 1px solid var(--border); text-align: left; } |
| thead th { border-bottom: 2px solid var(--sdsu-campanile); font-size: 0.85rem; letter-spacing: 0.02em; } |
| .num { text-align: right; } |
| tbody tr:nth-child(even) { background: var(--surface); } |
| tbody tr.lead-row { background: color-mix(in srgb, var(--mint-green) 12%, transparent); font-weight: 700; } |
|
|
| |
| .finding { |
| margin: 1.6rem 0 0; padding: 1rem 1.2rem; |
| border-left: 4px solid var(--mint-green-deep); background: var(--surface); border-radius: 0 10px 10px 0; |
| } |
| .finding p { margin: 0; } |
| .finding p + p { margin-top: 0.6rem; } |
| .note { font-size: 0.85rem; opacity: 0.8; margin: 0.8rem 0 0; } |
|
|
| |
| .links { display: flex; flex-wrap: wrap; gap: 0.5rem 0.9rem; margin: 0.4rem 0 0; font-weight: 600; } |
| .links a { white-space: nowrap; } |
| |
| |
| |
| |
| pre { |
| margin: 0; padding: 1rem 1.1rem; overflow-x: auto; |
| background: var(--surface); border: 1px solid var(--border); border-radius: 10px; |
| font-size: 0.82rem; line-height: 1.5; |
| } |
|
|
| @media (max-width: 720px) { |
| .band-head { --band-h: 3.6rem; grid-template-columns: 1fr; justify-items: center; gap: 0.8rem; } |
| .band-head .qr { display: none; } |
| } |
|
|