@outs-tand-ing/ui 0.0.6 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/README.md +7 -0
  2. package/dist/components/AccessWrapper.vue.d.ts +23 -0
  3. package/dist/components/AccessWrapper.vue.d.ts.map +1 -0
  4. package/dist/components/SVGShape.vue.d.ts +43 -0
  5. package/dist/components/SVGShape.vue.d.ts.map +1 -0
  6. package/dist/components/ScrollableArea.vue.d.ts +22 -0
  7. package/dist/components/ScrollableArea.vue.d.ts.map +1 -0
  8. package/dist/index.d.ts +8 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +451 -49
  11. package/dist/seasons/24.js +4 -0
  12. package/dist/seasons/25.js +4 -0
  13. package/dist/seasons/26.js +4 -0
  14. package/dist/seasons/27.js +4 -0
  15. package/dist/seasons/fifawc26/index.d.ts +3 -0
  16. package/dist/seasons/fifawc26/index.d.ts.map +1 -0
  17. package/dist/seasons/season24/index.d.ts +3 -0
  18. package/dist/seasons/season24/index.d.ts.map +1 -0
  19. package/dist/seasons/season25/index.d.ts +3 -0
  20. package/dist/seasons/season25/index.d.ts.map +1 -0
  21. package/dist/seasons/season26/index.d.ts +3 -0
  22. package/dist/seasons/season26/index.d.ts.map +1 -0
  23. package/dist/seasons/season27/index.d.ts +3 -0
  24. package/dist/seasons/season27/index.d.ts.map +1 -0
  25. package/dist/seasons/wc26.js +4 -0
  26. package/dist/ui.css +2 -0
  27. package/dist/utils/cdn.d.ts +4 -0
  28. package/dist/utils/cdn.d.ts.map +1 -0
  29. package/dist/utils/shape-data.d.ts +4 -0
  30. package/dist/utils/shape-data.d.ts.map +1 -0
  31. package/dist/utils/svg-parse.d.ts +12 -0
  32. package/dist/utils/svg-parse.d.ts.map +1 -0
  33. package/package.json +33 -6
  34. package/src/assets/brand/icon.svg +12 -0
  35. package/src/assets/components.css +66 -0
  36. package/src/components/AccessWrapper.vue +54 -0
  37. package/src/components/SVGShape.vue +282 -0
  38. package/src/components/ScrollableArea.vue +85 -0
  39. package/src/index.ts +9 -1
  40. package/src/seasons/fifawc26/icon.svg +4 -0
  41. package/src/seasons/fifawc26/index.ts +2 -0
  42. package/src/seasons/fifawc26/logo.svg +10 -0
  43. package/src/seasons/fifawc26/style.css +26 -0
  44. package/src/seasons/season24/icon.svg +4 -0
  45. package/src/seasons/season24/index.ts +2 -0
  46. package/src/seasons/season24/logo.svg +10 -0
  47. package/src/seasons/season24/style.css +26 -0
  48. package/src/seasons/season25/icon.svg +4 -0
  49. package/src/seasons/season25/index.ts +2 -0
  50. package/src/seasons/season25/logo.svg +10 -0
  51. package/src/seasons/season25/style.css +26 -0
  52. package/src/seasons/season26/icon.svg +4 -0
  53. package/src/seasons/season26/index.ts +2 -0
  54. package/src/seasons/season26/logo.svg +10 -0
  55. package/src/seasons/season26/style.css +26 -0
  56. package/src/seasons/season27/icon.svg +4 -0
  57. package/src/seasons/season27/index.ts +2 -0
  58. package/src/seasons/season27/logo.svg +10 -0
  59. package/src/seasons/season27/style.css +26 -0
  60. package/src/svg.d.ts +4 -0
  61. package/src/utils/cdn.ts +14 -0
  62. package/src/utils/shape-data.ts +18 -0
  63. package/src/utils/svg-parse.ts +31 -0
  64. package/dist/components/PinkBox.vue.d.ts +0 -7
  65. package/dist/components/PinkBox.vue.d.ts.map +0 -1
  66. package/src/components/PinkBox.vue +0 -11
@@ -0,0 +1,282 @@
1
+ <script setup lang="ts">
2
+ import { computed, ref, watch, nextTick, useSlots, useAttrs } from 'vue'
3
+ import { shapes, type ShapeData } from '../utils/shape-data'
4
+ import type { LogoData } from '../utils/svg-parse'
5
+
6
+ defineOptions({ inheritAttrs: false })
7
+
8
+ const props = withDefaults(
9
+ defineProps<{
10
+ logoData?: LogoData
11
+ shape?: string
12
+ strokeWidth?: number
13
+ strokeClass?: string
14
+ imageSrc?: string
15
+ videoSrc?: string
16
+ posterSrc?: string
17
+ fit?: 'width' | 'height' | 'responsive'
18
+ filled?: boolean
19
+ fillColor?: string
20
+ overlayColor?: string
21
+ ariaLabel?: string
22
+ }>(),
23
+ {
24
+ strokeWidth: 12,
25
+ strokeClass: '',
26
+ imageSrc: '',
27
+ videoSrc: '',
28
+ posterSrc: '',
29
+ ariaLabel: 'SVG shape',
30
+ fit: 'height',
31
+ filled: false,
32
+ fillColor: 'var(--color-season)',
33
+ },
34
+ )
35
+
36
+ const slots = useSlots()
37
+ const attrs = useAttrs()
38
+ const rootAttrs = computed(() => { const { style: _style, ...rest } = attrs; return rest })
39
+ const passedStyle = computed(() => attrs.style as Record<string, string> | string | undefined)
40
+
41
+ // --- Path data ---
42
+
43
+ const pathData = computed<ShapeData | null>(() => {
44
+ if (props.logoData) return props.logoData as ShapeData
45
+ if (props.shape) return shapes[props.shape] ?? null
46
+ return null
47
+ })
48
+
49
+ // --- Strokes ---
50
+
51
+ const outerSW = computed(() => props.strokeWidth * 2)
52
+ const innerSW = computed(() => props.strokeWidth)
53
+ const outerColor = 'var(--logo-outer-stroke-color, currentColor)'
54
+ const innerColor = 'var(--logo-stroke-color, currentColor)'
55
+
56
+ // --- ViewBox + aspect ratio ---
57
+
58
+ const strokePad = computed(() => outerSW.value / 2)
59
+ const pw = computed(() => (pathData.value?.width ?? 100))
60
+ const ph = computed(() => (pathData.value?.height ?? 100))
61
+ const totalW = computed(() => pw.value + strokePad.value * 2)
62
+ const totalH = computed(() => ph.value + strokePad.value * 2)
63
+ const paddedViewBox = computed(() => `${-strokePad.value} ${-strokePad.value} ${totalW.value} ${totalH.value}`)
64
+ const aspectRatio = computed(() => `${totalW.value} / ${totalH.value}`)
65
+
66
+ // --- Mask (shared by content + media layers) ---
67
+
68
+ const maskUri = computed(() => {
69
+ if (!pathData.value) return ''
70
+ const paths = pathData.value.paths.map(p => `<path d="${p.d}" fill="white"/>`).join('')
71
+ const svg = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="${pathData.value.viewBox}">${paths}</svg>`
72
+ return `url("data:image/svg+xml,${encodeURIComponent(svg)}")`
73
+ })
74
+
75
+ const innerLayerBase = computed(() => ({
76
+ position: 'absolute' as const,
77
+ left: `${(strokePad.value / totalW.value) * 100}%`,
78
+ top: `${(strokePad.value / totalH.value) * 100}%`,
79
+ width: `${(pw.value / totalW.value) * 100}%`,
80
+ height: `${(ph.value / totalH.value) * 100}%`,
81
+ WebkitMaskImage: maskUri.value,
82
+ maskImage: maskUri.value,
83
+ WebkitMaskSize: '100% 100%',
84
+ maskSize: '100% 100%',
85
+ WebkitMaskRepeat: 'no-repeat',
86
+ maskRepeat: 'no-repeat',
87
+ }))
88
+
89
+ // --- Media ---
90
+
91
+ const hasMedia = computed(() => !!props.imageSrc || !!props.videoSrc)
92
+ const videoEl = ref<HTMLVideoElement | null>(null)
93
+ const isVideoPlaying = ref(false)
94
+
95
+ const emit = defineEmits<{ 'load-video': [] }>()
96
+
97
+ watch(() => props.videoSrc, (src) => {
98
+ if (!src) return
99
+ nextTick(() => {
100
+ const el = videoEl.value
101
+ if (el) { el.load(); el.play() }
102
+ })
103
+ })
104
+
105
+ function toggleVideoPlayback() {
106
+ if (!props.videoSrc) {
107
+ emit('load-video')
108
+ return
109
+ }
110
+ const el = videoEl.value
111
+ if (!el) return
112
+ if (el.paused) {
113
+ if (el.ended) el.currentTime = 0
114
+ el.load()
115
+ el.play()
116
+ return
117
+ }
118
+ el.pause()
119
+ }
120
+ </script>
121
+
122
+ <template>
123
+ <div class="svg-shape" v-bind="rootAttrs">
124
+ <div v-if="pathData" class="svg-shape-artboard" :class="`fit-${fit}`" :style="{ aspectRatio }" role="img" :aria-label="ariaLabel">
125
+ <!-- Layer 0: Shape fill (opaque backing behind content) -->
126
+ <svg v-if="filled" xmlns="http://www.w3.org/2000/svg" class="fill-layer" :viewBox="paddedViewBox" fill="none">
127
+ <path v-for="(path, idx) in pathData.paths" :key="`fill-${idx}`" :d="path.d" :fill="fillColor" stroke="none" />
128
+ </svg>
129
+
130
+ <!-- Layer 1: Slot content (background + text, masked to shape) -->
131
+ <div v-if="slots.default" class="content-layer" :style="[innerLayerBase, passedStyle]">
132
+ <slot />
133
+ </div>
134
+
135
+ <!-- Layer 2: Media (image/video, masked to shape) -->
136
+ <div v-if="hasMedia" class="media-layer" :style="innerLayerBase" @click="toggleVideoPlayback">
137
+ <img v-if="imageSrc" :src="imageSrc" class="masked-media" />
138
+ <video
139
+ v-if="videoSrc"
140
+ ref="videoEl"
141
+ class="masked-media"
142
+ :src="videoSrc"
143
+ :poster="posterSrc || imageSrc"
144
+ muted
145
+ loop
146
+ playsinline
147
+ preload="none"
148
+ @play="isVideoPlaying = true"
149
+ @pause="isVideoPlaying = false"
150
+ @ended="isVideoPlaying = false"
151
+ />
152
+ </div>
153
+
154
+ <!-- Layer 2.5: Color overlay (masked to shape, above media, below strokes) -->
155
+ <div v-if="overlayColor" class="overlay-layer" :style="[innerLayerBase, { backgroundColor: overlayColor }]" />
156
+
157
+ <!-- Layer 3: SVG strokes (always on top) -->
158
+ <svg xmlns="http://www.w3.org/2000/svg" class="stroke-overlay" :viewBox="paddedViewBox" fill="none">
159
+ <g>
160
+ <path
161
+ v-for="(path, idx) in pathData.paths"
162
+ :key="`outer-${idx}`"
163
+ :d="path.d"
164
+ fill="none"
165
+ :stroke="outerColor"
166
+ :class="strokeClass"
167
+ stroke-linecap="round"
168
+ stroke-linejoin="round"
169
+ :stroke-width="outerSW"
170
+ opacity="0.95"
171
+ pointer-events="none"
172
+ />
173
+ </g>
174
+ <g>
175
+ <path
176
+ v-for="(path, idx) in pathData.paths"
177
+ :key="`inner-${idx}`"
178
+ :d="path.d"
179
+ fill="none"
180
+ :stroke="innerColor"
181
+ :class="strokeClass"
182
+ stroke-linecap="round"
183
+ stroke-linejoin="round"
184
+ :stroke-width="innerSW"
185
+ pointer-events="none"
186
+ />
187
+ </g>
188
+ </svg>
189
+
190
+ </div>
191
+ </div>
192
+ </template>
193
+
194
+ <style scoped>
195
+ .svg-shape {
196
+ display: flex;
197
+ align-items: center;
198
+ justify-content: center;
199
+ position: relative;
200
+ }
201
+
202
+ .svg-shape-artboard {
203
+ position: relative;
204
+ display: block;
205
+ flex-shrink: 0;
206
+ isolation: isolate;
207
+ }
208
+
209
+ .svg-shape-artboard.fit-height {
210
+ height: 100%;
211
+ max-width: 100%;
212
+ }
213
+
214
+ .svg-shape-artboard.fit-width {
215
+ width: 100%;
216
+ max-height: 100%;
217
+ }
218
+
219
+ .svg-shape-artboard.fit-responsive {
220
+ width: 100%;
221
+ max-height: 100%;
222
+ }
223
+
224
+ @media (min-width: 768px) {
225
+ .svg-shape-artboard.fit-responsive {
226
+ width: auto;
227
+ height: 100%;
228
+ max-width: 100%;
229
+ max-height: none;
230
+ }
231
+ }
232
+
233
+ .fill-layer {
234
+ position: absolute;
235
+ top: 0;
236
+ left: 0;
237
+ width: 100%;
238
+ height: 100%;
239
+ display: block;
240
+ pointer-events: none;
241
+ z-index: 1;
242
+ }
243
+
244
+ .stroke-overlay {
245
+ position: absolute;
246
+ top: 0;
247
+ left: 0;
248
+ width: 100%;
249
+ height: 100%;
250
+ display: block;
251
+ pointer-events: none;
252
+ z-index: 20;
253
+ }
254
+
255
+ .content-layer {
256
+ display: flex;
257
+ align-items: center;
258
+ justify-content: center;
259
+ overflow: hidden;
260
+ z-index: 10;
261
+ }
262
+
263
+ .overlay-layer {
264
+ pointer-events: none;
265
+ z-index: 15;
266
+ }
267
+
268
+ .media-layer {
269
+ overflow: hidden;
270
+ cursor: pointer;
271
+ }
272
+
273
+ .masked-media {
274
+ position: absolute;
275
+ top: 0;
276
+ left: 0;
277
+ width: 100%;
278
+ height: 100%;
279
+ object-fit: cover;
280
+ pointer-events: none;
281
+ }
282
+ </style>
@@ -0,0 +1,85 @@
1
+ <template>
2
+ <div class="relative overflow-hidden" :class="wrapperClass">
3
+ <div ref="scroller" class="size-full hide-scroll" :class="scrollerClass" @scroll="onScroll">
4
+ <slot />
5
+ </div>
6
+ <div
7
+ v-if="axis !== 'x'"
8
+ class="pointer-events-none absolute left-0 right-0 top-0 h-10 transition-opacity duration-200"
9
+ :class="canScrollUp ? 'opacity-100' : 'opacity-0'"
10
+ :style="fadeStyle('to bottom')"
11
+ />
12
+ <div
13
+ v-if="axis !== 'x'"
14
+ class="pointer-events-none absolute left-0 right-0 bottom-0 h-10 transition-opacity duration-200"
15
+ :class="canScrollDown ? 'opacity-100' : 'opacity-0'"
16
+ :style="fadeStyle('to top')"
17
+ />
18
+ <div
19
+ v-if="axis !== 'y'"
20
+ class="pointer-events-none absolute top-0 bottom-0 left-0 w-10 transition-opacity duration-200"
21
+ :class="canScrollLeft ? 'opacity-100' : 'opacity-0'"
22
+ :style="fadeStyle('to right')"
23
+ />
24
+ <div
25
+ v-if="axis !== 'y'"
26
+ class="pointer-events-none absolute top-0 bottom-0 right-0 w-10 transition-opacity duration-200"
27
+ :class="canScrollRight ? 'opacity-100' : 'opacity-0'"
28
+ :style="fadeStyle('to left')"
29
+ />
30
+ </div>
31
+ </template>
32
+
33
+ <script setup lang="ts">
34
+ import { computed, ref, onMounted, onUnmounted } from 'vue'
35
+
36
+ const props = withDefaults(
37
+ defineProps<{
38
+ axis?: 'x' | 'y' | 'both'
39
+ fadeColor?: string
40
+ wrapperClass?: string
41
+ }>(),
42
+ { axis: 'y', fadeColor: 'white' },
43
+ )
44
+
45
+ const scrollerClass = computed(() => {
46
+ if (props.axis === 'x') return 'overflow-x-auto overflow-y-hidden'
47
+ if (props.axis === 'both') return 'overflow-auto'
48
+ return 'overflow-y-auto overflow-x-hidden'
49
+ })
50
+
51
+ const fadeStyle = (direction: string) => ({
52
+ background: `linear-gradient(${direction}, ${props.fadeColor}, transparent)`,
53
+ })
54
+
55
+ const scroller = ref<HTMLElement | null>(null)
56
+ const canScrollUp = ref(false)
57
+ const canScrollDown = ref(false)
58
+ const canScrollLeft = ref(false)
59
+ const canScrollRight = ref(false)
60
+
61
+ const update = () => {
62
+ const el = scroller.value
63
+ if (!el) return
64
+ if (props.axis !== 'x') {
65
+ canScrollUp.value = el.scrollTop > 2
66
+ canScrollDown.value = el.scrollTop + el.clientHeight < el.scrollHeight - 2
67
+ }
68
+ if (props.axis !== 'y') {
69
+ canScrollLeft.value = el.scrollLeft > 2
70
+ canScrollRight.value = el.scrollLeft + el.clientWidth < el.scrollWidth - 2
71
+ }
72
+ }
73
+
74
+ const onScroll = update
75
+
76
+ let ro: ResizeObserver | null = null
77
+ onMounted(() => {
78
+ update()
79
+ if (scroller.value) {
80
+ ro = new ResizeObserver(update)
81
+ ro.observe(scroller.value)
82
+ }
83
+ })
84
+ onUnmounted(() => ro?.disconnect())
85
+ </script>
package/src/index.ts CHANGED
@@ -1,2 +1,10 @@
1
- export { default as PinkBox } from './components/PinkBox.vue'
2
1
  export { default as BrandLogo } from './components/BrandLogo.vue'
2
+ export { default as AccessWrapper } from './components/AccessWrapper.vue'
3
+ export { default as ScrollableArea } from './components/ScrollableArea.vue'
4
+ export { default as SVGShape } from './components/SVGShape.vue'
5
+
6
+ export { parseLogoSvg } from './utils/svg-parse'
7
+ export type { LogoData, LogoPath } from './utils/svg-parse'
8
+ export { shapes } from './utils/shape-data'
9
+ export type { ShapeData } from './utils/shape-data'
10
+ export { CDN_BASE, seasonSlugMap, seasonAssetUrl } from './utils/cdn'
@@ -0,0 +1,4 @@
1
+ <svg width="757" height="400" viewBox="0 0 757 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M52.4271 97.8378C70.4432 66.4865 93.1436 42.3423 120.528 25.4054C147.913 8.46847 182.143 0 223.22 0C250.605 0 274.026 4.5045 293.483 13.5135C313.301 22.1621 328.255 34.4144 338.344 50.2703C348.793 66.1261 354.018 84.3243 354.018 104.865C354.018 112.793 353.297 120.36 351.856 127.568C345.01 166.126 331.137 195.495 310.238 215.676C289.34 235.856 261.775 250.811 227.544 260.541C214.933 264.144 202.141 267.387 189.17 270.27C174.397 273.513 163.407 276.396 156.2 278.919C149.354 281.441 145.571 284.324 144.85 287.568V289.189H291.862C299.429 289.189 304.653 290.27 307.536 292.432C310.779 294.595 312.4 298.559 312.4 304.324L311.319 312.973L301.591 368.108C300.149 377.117 297.267 383.423 292.943 387.027C288.979 390.27 282.494 391.892 273.485 391.892H20.5384C12.9716 391.892 7.74695 390.811 4.86437 388.649C1.62146 386.486 0 382.523 0 376.757L1.08097 368.108L10.2692 315.676C14.2328 292.973 22.3401 274.414 34.591 260C47.2024 245.225 60.7145 234.054 75.1274 226.486C89.5404 218.559 109.718 209.009 135.662 197.838C137.103 197.117 141.787 195.315 149.714 192.432C166.289 185.946 179.081 180.36 188.089 175.676C197.097 170.991 205.024 165.225 211.87 158.378C218.716 151.532 223.04 143.063 224.842 132.973C225.202 131.532 225.382 129.55 225.382 127.027C225.382 114.775 218.176 108.649 203.763 108.649C195.836 108.649 188.809 110.991 182.684 115.676C176.919 120 170.073 128.108 162.146 140C158.182 146.486 154.579 151.171 151.336 154.054C148.453 156.577 145.03 157.838 141.067 157.838C137.824 157.838 133.86 156.937 129.176 155.135L61.6153 128.108C56.5708 126.306 52.9675 124.324 50.8056 122.162C48.6437 119.64 47.5627 116.577 47.5627 112.973C47.5627 109.369 49.1841 104.324 52.4271 97.8378Z" fill="#F31919"/>
3
+ <path d="M550.535 150.27C561.705 148.829 576.478 148.108 594.855 148.108C642.057 148.108 676.828 155.676 699.168 170.811C721.508 185.586 732.678 208.829 732.678 240.541C732.678 250.27 731.597 260.901 729.435 272.432C721.868 314.234 702.051 345.946 669.982 367.568C637.913 389.189 596.116 400 544.589 400C498.828 400 464.237 389.91 440.816 369.73C417.395 349.189 405.685 320.18 405.685 282.703C405.685 271.171 406.766 258.919 408.928 245.946L427.304 141.081C435.592 93.1531 455.229 57.6577 486.217 34.5946C517.565 11.5315 560.083 0 613.772 0C655.929 0 688.539 6.84684 711.599 20.5405C735.02 34.2342 749.794 56.036 755.919 85.9459C756.64 90.2703 757 92.973 757 94.0541C757 99.4595 755.379 103.784 752.136 107.027C748.893 110.27 743.488 113.333 735.921 116.216L670.522 140C667.28 141.441 664.037 142.162 660.794 142.162C657.551 142.162 654.848 141.261 652.686 139.459C650.885 137.297 648.903 134.595 646.741 131.351C644.939 128.108 643.498 125.586 642.417 123.784C638.814 118.018 634.13 114.054 628.365 111.892C622.599 109.73 613.771 108.649 601.881 108.649C586.387 108.649 574.676 111.532 566.749 117.297C558.822 123.063 553.597 132.973 551.075 147.027L550.535 150.27ZM528.915 272.432C528.555 273.874 528.375 275.676 528.375 277.838C528.375 283.964 530.897 288.649 535.942 291.892C540.986 295.135 549.814 296.757 562.425 296.757C577.559 296.757 588.008 294.955 593.774 291.351C599.539 287.387 603.142 281.441 604.583 273.513C604.944 272.072 605.124 270.27 605.124 268.108C605.124 262.342 602.421 258.198 597.016 255.676C591.972 252.793 583.144 251.351 570.533 251.351C555.759 251.351 542.968 252.432 532.158 254.595L528.915 272.432Z" fill="#F31919"/>
4
+ </svg>
@@ -0,0 +1,2 @@
1
+ export { default as logoRaw } from './logo.svg?raw'
2
+ export { default as iconRaw } from './icon.svg?raw'
@@ -0,0 +1,10 @@
1
+ <svg width="3000" height="400" viewBox="0 0 3000 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M323.744 8.1081C330.951 8.1081 336.175 9.36937 339.418 11.8919C342.661 14.0541 344.282 18.018 344.282 23.7838C344.282 27.027 344.102 29.7297 343.742 31.8919L332.932 92.4324C331.491 101.441 328.609 107.748 324.285 111.351C320.321 114.595 313.836 116.216 304.828 116.216H170.79L162.142 165.405H265.913C273.48 165.405 278.705 166.486 281.587 168.649C284.83 170.811 286.452 174.775 286.452 180.541L285.371 189.189L275.102 249.73C273.66 258.739 270.778 265.045 266.454 268.649C262.49 271.892 256.005 273.513 246.997 273.513H143.226L126.471 368.108C125.03 377.117 122.147 383.423 117.823 387.027C113.86 390.27 107.374 391.892 98.3664 391.892H20.538C12.9714 391.892 7.56664 390.811 4.3238 388.649C1.44127 386.486 0 382.523 0 376.757L1.08095 368.108L60.5331 31.8919C61.9744 22.8829 64.6768 16.7567 68.6403 13.5135C72.6037 9.9099 79.0894 8.1081 88.0973 8.1081H323.744Z" fill="#F31919"/>
3
+ <path d="M423.873 29.7297C425.675 21.4414 428.377 15.8559 431.98 12.973C435.583 9.72972 441.348 8.1081 449.275 8.1081H531.427C537.913 8.1081 542.597 9.18918 545.48 11.3513C548.723 13.5135 550.344 16.9369 550.344 21.6216C550.344 22.7027 549.984 25.4054 549.263 29.7297L489.27 370.27C487.829 378.198 485.307 383.784 481.704 387.027C478.101 390.27 472.155 391.892 463.868 391.892H381.716C374.87 391.892 370.006 390.811 367.123 388.649C364.601 386.486 363.34 382.883 363.34 377.838C363.34 374.595 363.52 372.072 363.88 370.27L423.873 29.7297Z" fill="#F31919"/>
4
+ <path d="M901.557 8.1081C908.763 8.1081 913.988 9.36937 917.231 11.8919C920.474 14.0541 922.095 18.018 922.095 23.7838C922.095 27.027 921.915 29.7297 921.555 31.8919L910.745 92.4324C909.304 101.441 906.421 107.748 902.098 111.351C898.134 114.595 891.648 116.216 882.641 116.216H748.603L739.955 165.405H843.726C851.293 165.405 856.518 166.486 859.4 168.649C862.643 170.811 864.264 174.775 864.264 180.541L863.183 189.189L852.914 249.73C851.473 258.739 848.591 265.045 844.267 268.649C840.303 271.892 833.818 273.513 824.81 273.513H721.039L704.284 368.108C702.843 377.117 699.96 383.423 695.636 387.027C691.673 390.27 685.187 391.892 676.179 391.892H598.351C590.784 391.892 585.38 390.811 582.137 388.649C579.254 386.486 577.813 382.523 577.813 376.757L578.894 368.108L638.346 31.8919C639.787 22.8829 642.49 16.7567 646.453 13.5135C650.417 9.9099 656.902 8.1081 665.91 8.1081H901.557Z" fill="#F31919"/>
5
+ <path d="M895.533 391.892C885.084 391.892 879.86 388.829 879.86 382.703C879.86 379.099 881.481 374.414 884.724 368.649L1065.24 27.5676C1069.21 19.6396 1073.35 14.4144 1077.67 11.8919C1082.36 9.36937 1089.02 8.1081 1097.67 8.1081H1177.66C1185.95 8.1081 1191.89 9.54954 1195.5 12.4324C1199.46 14.9549 1202.16 19.8198 1203.6 27.027L1264.68 368.649C1265.04 370.09 1265.22 372.072 1265.22 374.595C1265.22 386.126 1258.01 391.892 1243.6 391.892H1170.09C1156.4 391.892 1147.03 390.09 1141.99 386.486C1136.95 382.523 1134.06 376.036 1133.34 367.027L1130.64 339.459H1029.03L1016.6 367.027C1012.64 376.036 1007.59 382.523 1001.47 386.486C995.341 390.09 985.973 391.892 973.362 391.892H895.533ZM1121.45 241.081L1117.13 197.838C1116.77 193.514 1116.59 187.027 1116.59 178.378C1116.59 160.36 1117.85 141.982 1120.37 123.243H1114.97C1110.28 150.631 1103.08 175.315 1093.35 197.297L1073.35 241.081H1121.45Z" fill="#F31919"/>
6
+ <path d="M1834.89 8.1081C1844.98 8.1081 1850.02 10.991 1850.02 16.7568C1850.02 19.2793 1848.76 23.964 1846.24 30.8108L1704.63 371.892C1701.39 379.82 1697.25 385.225 1692.2 388.108C1687.52 390.631 1680.85 391.892 1672.21 391.892H1585.73C1577.08 391.892 1570.6 390.631 1566.27 388.108C1562.31 385.225 1560.15 380.18 1559.79 372.973L1558.71 294.054C1558.35 257.297 1561.59 217.477 1568.43 174.595H1563.57C1554.2 217.117 1542.67 257.117 1528.98 294.595L1500.88 371.892C1497.27 379.82 1492.95 385.225 1487.9 388.108C1482.86 390.631 1476.19 391.892 1467.91 391.892H1383.59C1374.94 391.892 1368.46 390.631 1364.13 388.108C1360.17 385.586 1358.01 380.541 1357.65 372.973L1337.11 30.8108C1336.39 22.5225 1337.29 16.7567 1339.81 13.5135C1342.34 9.9099 1347.74 8.1081 1356.03 8.1081H1437.1C1447.55 8.1081 1454.75 9.54954 1458.72 12.4324C1463.04 14.9549 1465.38 20.3603 1465.74 28.6486L1460.88 146.486C1460.52 161.982 1458.9 180.721 1456.02 202.703C1453.13 224.685 1450.61 241.802 1448.45 254.054H1452.77C1455.29 240 1459.26 222.342 1464.66 201.081C1470.07 179.82 1475.65 161.622 1481.42 146.486L1526.28 28.6486C1529.16 20.3603 1533.12 14.9549 1538.17 12.4324C1543.57 9.54954 1551.14 8.1081 1560.87 8.1081H1635.45C1645.18 8.1081 1652.21 9.54954 1656.53 12.4324C1660.86 14.9549 1663.2 20.3603 1663.56 28.6486L1666.8 146.486C1667.52 169.189 1664.64 205.045 1658.15 254.054H1662.48C1672.21 207.928 1680.85 172.072 1688.42 146.486L1725.17 28.6486C1728.05 20.3603 1732.02 14.9549 1737.06 12.4324C1742.11 9.54954 1749.85 8.1081 1760.3 8.1081H1834.89Z" fill="#F31919"/>
7
+ <path d="M1882.84 147.568C1891.13 99.6396 1912.21 63.0631 1946.08 37.8378C1980.31 12.6126 2025.17 0 2080.66 0C2122.81 0 2155.06 8.46847 2177.4 25.4054C2199.74 42.3423 2213.97 67.2072 2220.1 100C2220.82 104.324 2221.18 107.027 2221.18 108.108C2221.18 113.874 2219.56 118.378 2216.32 121.622C2213.07 124.865 2207.85 127.748 2200.64 130.27L2129.3 154.595C2124.62 156.036 2120.29 156.757 2116.33 156.757C2112.01 156.757 2108.76 155.495 2106.6 152.973C2104.44 150.45 2102.64 145.946 2101.2 139.459C2099.03 128.288 2095.07 120.36 2089.31 115.676C2083.9 110.991 2074.89 108.649 2062.28 108.649C2043.91 108.649 2030.75 112.252 2022.83 119.459C2015.26 126.667 2009.86 138.919 2006.61 156.216L1990.94 243.784C1989.86 250.27 1989.32 256.036 1989.32 261.081C1989.32 271.892 1992.38 279.64 1998.51 284.324C2004.63 289.009 2015.08 291.351 2029.85 291.351C2042.1 291.351 2052.19 288.829 2060.12 283.784C2068.05 278.739 2074.89 270.991 2080.66 260.541C2084.26 254.054 2087.68 249.55 2090.93 247.027C2094.17 244.144 2097.77 242.703 2101.74 242.703C2104.98 242.703 2108.94 243.604 2113.63 245.405L2183.89 272.432C2189.29 274.234 2193.08 276.396 2195.24 278.919C2197.76 281.081 2199.02 283.964 2199.02 287.568C2199.02 290.811 2197.22 296.036 2193.62 303.243C2176.32 334.955 2152.54 359.099 2122.27 375.676C2092.01 391.892 2055.44 400 2012.56 400C1965 400 1928.24 388.468 1902.3 365.405C1876.72 342.342 1863.93 310.991 1863.93 271.351C1863.93 260.541 1865.01 249.189 1867.17 237.297L1882.84 147.568Z" fill="#F31919"/>
8
+ <path d="M2295.55 97.8378C2313.56 66.4865 2336.26 42.3423 2363.65 25.4054C2391.03 8.46847 2425.26 0 2466.34 0C2493.72 0 2517.14 4.5045 2536.6 13.5135C2556.42 22.1621 2571.37 34.4144 2581.46 50.2703C2591.91 66.1261 2597.13 84.3243 2597.13 104.865C2597.13 112.793 2596.41 120.36 2594.97 127.568C2588.13 166.126 2574.25 195.495 2553.36 215.676C2532.46 235.856 2504.89 250.811 2470.66 260.541C2458.05 264.144 2445.26 267.387 2432.29 270.27C2417.52 273.513 2406.53 276.396 2399.32 278.919C2392.47 281.441 2388.69 284.324 2387.97 287.568V289.189H2534.98C2542.55 289.189 2547.77 290.27 2550.65 292.432C2553.9 294.595 2555.52 298.559 2555.52 304.324L2554.44 312.973L2544.71 368.108C2543.27 377.117 2540.38 383.423 2536.06 387.027C2532.1 390.27 2525.61 391.892 2516.6 391.892H2263.66C2256.09 391.892 2250.87 390.811 2247.99 388.649C2244.74 386.486 2243.12 382.523 2243.12 376.757L2244.2 368.108L2253.39 315.676C2257.36 292.973 2265.46 274.414 2277.71 260C2290.32 245.225 2303.84 234.054 2318.25 226.486C2332.66 218.559 2352.84 209.009 2378.78 197.838C2380.22 197.117 2384.91 195.315 2392.83 192.432C2409.41 185.946 2422.2 180.36 2431.21 175.676C2440.22 170.991 2448.14 165.225 2454.99 158.378C2461.83 151.532 2466.16 143.063 2467.96 132.973C2468.32 131.532 2468.5 129.55 2468.5 127.027C2468.5 114.775 2461.29 108.649 2446.88 108.649C2438.95 108.649 2431.93 110.991 2425.8 115.676C2420.04 120 2413.19 128.108 2405.27 140C2401.3 146.486 2397.7 151.171 2394.46 154.054C2391.57 156.577 2388.15 157.838 2384.19 157.838C2380.94 157.838 2376.98 156.937 2372.3 155.135L2304.74 128.108C2299.69 126.306 2296.09 124.324 2293.93 122.162C2291.77 119.64 2290.68 116.577 2290.68 112.973C2290.68 109.369 2292.31 104.324 2295.55 97.8378Z" fill="#F31919"/>
9
+ <path d="M2793.54 150.27C2804.71 148.829 2819.48 148.108 2837.86 148.108C2885.06 148.108 2919.83 155.676 2942.17 170.811C2964.51 185.586 2975.68 208.829 2975.68 240.541C2975.68 250.27 2974.6 260.901 2972.44 272.432C2964.87 314.234 2945.05 345.946 2912.98 367.568C2880.92 389.189 2839.12 400 2787.59 400C2741.83 400 2707.24 389.91 2683.82 369.73C2660.4 349.189 2648.69 320.18 2648.69 282.703C2648.69 271.171 2649.77 258.919 2651.93 245.946L2670.31 141.081C2678.6 93.1531 2698.24 57.6577 2729.22 34.5946C2760.57 11.5315 2803.09 0 2856.77 0C2898.93 0 2931.54 6.84684 2954.6 20.5405C2978.02 34.2342 2992.79 56.036 2998.92 85.9459C2999.64 90.2703 3000 92.973 3000 94.0541C3000 99.4595 2998.38 103.784 2995.14 107.027C2991.89 110.27 2986.49 113.333 2978.92 116.216L2913.52 140C2910.28 141.441 2907.04 142.162 2903.8 142.162C2900.55 142.162 2897.85 141.261 2895.69 139.459C2893.89 137.297 2891.91 134.595 2889.74 131.351C2887.94 128.108 2886.5 125.586 2885.42 123.784C2881.82 118.018 2877.13 114.054 2871.37 111.892C2865.6 109.73 2856.77 108.649 2844.88 108.649C2829.39 108.649 2817.68 111.532 2809.75 117.297C2801.83 123.063 2796.6 132.973 2794.08 147.027L2793.54 150.27ZM2771.92 272.432C2771.56 273.874 2771.38 275.676 2771.38 277.838C2771.38 283.964 2773.9 288.649 2778.95 291.892C2783.99 295.135 2792.82 296.757 2805.43 296.757C2820.56 296.757 2831.01 294.955 2836.78 291.351C2842.54 287.387 2846.14 281.441 2847.59 273.513C2847.95 272.072 2848.13 270.27 2848.13 268.108C2848.13 262.342 2845.42 258.198 2840.02 255.676C2834.98 252.793 2826.15 251.351 2813.54 251.351C2798.76 251.351 2785.97 252.432 2775.16 254.595L2771.92 272.432Z" fill="#F31919"/>
10
+ </svg>
@@ -0,0 +1,26 @@
1
+ :root[data-season='wc26'] {
2
+ --font-heading: 'Kufam', sans-serif;
3
+ --color-season: #e7e9ec;
4
+ --color-season-text: #152038;
5
+ --color-accent: #152038;
6
+ --color-accent-hover: #0e1628;
7
+ --color-contrast: #ffffff;
8
+ --color-surface: #f5f7fa;
9
+ --color-surface-alt: #ebeef5;
10
+ --color-border: #c8ceda;
11
+ --color-border-strong: #a5afc2;
12
+ --logo-stroke-color: var(--color-season);
13
+ }
14
+
15
+ :root[data-season='wc26'][data-theme='dark'] {
16
+ --color-season: #171a22;
17
+ --color-season-text: #cacdd4;
18
+ --color-accent: #6b8fd4;
19
+ --color-accent-hover: #3b5998;
20
+ --color-contrast: #ffffff;
21
+ --color-surface: #0a0e18;
22
+ --color-surface-alt: #121a2a;
23
+ --color-border: #1e2d48;
24
+ --color-border-strong: #2d4268;
25
+ --logo-stroke-color: var(--color-season);
26
+ }
@@ -0,0 +1,4 @@
1
+ <svg width="688" height="400" viewBox="0 0 688 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M10.6934 400C7.03742 400 4.29568 398.903 2.46772 396.708C0.274162 394.513 -0.456985 391.587 0.274201 387.929L11.79 323.731C12.8868 318.61 15.2633 314.403 18.9192 311.111L106.661 237.037C136.275 211.797 158.393 192.41 173.017 178.875C188.006 164.975 198.425 153.818 204.275 145.405C210.124 136.991 213.597 128.761 214.694 120.713C215.06 119.25 215.243 117.238 215.243 114.678C215.243 108.093 212.866 103.338 208.114 100.412C203.361 97.1193 195.501 95.4733 184.533 95.4733C161.135 95.4733 137.554 105.898 113.79 126.749C110.5 129.31 107.941 130.59 106.113 130.59C103.189 130.59 100.629 128.578 98.4358 124.554L65.5323 66.941C64.0699 63.283 63.3388 60.9053 63.3388 59.808C63.3388 57.2474 64.8011 54.5039 67.7258 51.5775C86.0055 35.8482 106.661 23.4111 129.694 14.2661C152.726 4.75538 176.49 0 200.985 0C236.813 0 265.146 8.96205 285.985 26.8862C306.824 44.4444 317.243 67.8555 317.243 97.1193C317.243 105.167 316.512 112.666 315.049 119.616C312.125 139.003 305.361 157.293 294.759 174.486C284.157 191.312 266.608 212.529 242.114 238.134C209.576 268.496 181.974 291.358 159.307 306.722H278.856C282.512 306.722 285.071 307.819 286.533 310.014C288.361 312.208 289.092 315.135 288.727 318.793L276.114 390.123C275.017 396.708 270.995 400 264.049 400H10.6934Z" fill="#0D4243"/>
3
+ <path d="M535.273 400C531.618 400 528.876 398.903 527.048 396.708C525.22 394.513 524.671 391.587 525.402 387.929L533.08 340.741H376.24C372.585 340.741 369.843 339.643 368.015 337.449C366.552 335.254 366.004 332.327 366.369 328.669L376.789 271.056C377.886 265.203 379.531 260.814 381.724 257.888L541.854 14.8148C545.145 10.0594 549.715 7.68175 555.564 7.68175H641.113C647.328 7.68175 650.435 10.0594 650.435 14.8148C650.435 17.0096 649.704 19.0215 648.242 20.8505L499.08 249.657H549.532L572.564 184.362C574.758 178.509 578.962 175.583 585.177 175.583H650.435C654.091 175.583 656.833 176.68 658.661 178.875C660.489 181.07 661.22 183.996 660.855 187.654L649.887 249.657H677.306C680.962 249.657 683.704 250.937 685.532 253.498C687.726 255.693 688.457 258.619 687.726 262.277L675.113 330.864C674.016 337.449 670.177 340.741 663.596 340.741H633.435L625.209 390.123C624.112 396.708 620.091 400 613.145 400H535.273Z" fill="#0D4243"/>
4
+ </svg>
@@ -0,0 +1,2 @@
1
+ export { default as logoRaw } from './logo.svg?raw'
2
+ export { default as iconRaw } from './icon.svg?raw'
@@ -0,0 +1,10 @@
1
+ <svg width="3000" height="400" viewBox="0 0 3000 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M306.281 288.022C297.668 328.578 278.29 357.47 248.146 374.697C218.362 391.566 182.118 400 139.414 400C87.3806 400 42.1652 382.234 3.76795 346.703C1.25598 344.549 0 341.857 0 338.627C0 336.115 0.897131 333.782 2.69139 331.629L50.0599 271.332C52.213 268.102 54.9044 266.487 58.1341 266.487C60.2872 266.487 62.7992 267.564 65.67 269.717C80.0241 281.561 94.0193 290.175 107.656 295.559C121.292 300.942 136.184 303.634 152.333 303.634C182.476 303.634 198.804 295.02 201.316 277.793C202.393 269.897 198.984 263.616 191.089 258.95C183.553 253.926 168.84 248.362 146.95 242.261C114.653 233.288 88.9954 219.65 69.9762 201.346C50.957 182.683 41.4475 159.175 41.4475 130.821C41.4475 124.361 41.9857 117.362 43.0623 109.825C49.1628 72.14 66.2083 44.5043 94.1988 26.9179C122.548 8.97263 157.357 0 198.625 0C248.864 0 292.644 13.2795 329.965 39.8385C333.194 41.9919 334.809 44.6837 334.809 47.9139C334.809 50.0673 333.912 52.4002 332.118 54.9125L279.905 117.362C277.034 120.233 274.163 121.669 271.292 121.669C270.216 121.669 267.883 120.951 264.295 119.515C239.534 103.365 213.697 95.2894 186.783 95.2894C174.223 95.2894 164.893 97.0839 158.792 100.673C152.692 103.903 149.103 109.287 148.027 116.824C146.95 124.002 150.18 129.924 157.716 134.589C165.61 139.255 178.708 144.459 197.01 150.202C217.823 157.021 235.945 164.199 251.376 171.736C266.807 179.273 280.264 190.399 291.747 205.114C303.589 219.471 309.51 237.775 309.51 260.027C309.51 268.282 308.434 277.613 306.281 288.022Z" fill="#0D4243"/>
3
+ <path d="M688.73 90.9825C687.653 97.4428 683.706 100.673 676.888 100.673H540.703L531.014 152.355H645.668C649.615 152.355 652.306 153.432 653.742 155.585C655.536 157.739 656.254 160.61 655.895 164.199L642.976 233.109C641.9 239.569 638.132 242.799 631.672 242.799H514.866L504.639 298.789H648.359C651.948 298.789 654.639 299.865 656.433 302.019C658.228 304.172 658.766 307.044 658.048 310.633L646.206 382.773C645.129 389.233 641.361 392.463 634.902 392.463H396.983C393.394 392.463 390.703 391.386 388.909 389.233C387.115 387.079 386.576 384.208 387.294 380.619L451.887 17.2275C452.964 10.7672 456.732 7.53701 463.191 7.53701H691.421C695.01 7.53701 697.701 8.61372 699.496 10.7671C701.29 12.9206 701.828 15.7918 701.11 19.3809L688.73 90.9825Z" fill="#0D4243"/>
4
+ <path d="M972.002 392.463C964.825 392.463 961.057 389.053 960.698 382.234L956.392 334.859H848.736L828.281 384.388C826.487 389.771 822.36 392.463 815.901 392.463H726.547C723.676 392.463 721.523 391.745 720.087 390.31C718.293 388.874 717.396 387.079 717.396 384.926C717.396 382.773 717.755 380.978 718.472 379.542L892.336 15.6124C894.848 10.2288 899.155 7.53701 905.255 7.53701H998.377C1005.55 7.53701 1009.68 10.7672 1010.76 17.2275L1064.59 381.157V383.311C1064.59 389.412 1061.18 392.463 1054.36 392.463H972.002ZM936.475 121.131C928.222 144.459 912.073 184.836 888.03 242.261H947.779C942.396 184.836 939.346 144.459 938.628 121.131H936.475Z" fill="#0D4243"/>
5
+ <path d="M1438.12 288.022C1429.51 328.578 1410.13 357.47 1379.99 374.697C1350.2 391.566 1313.96 400 1271.25 400C1219.22 400 1174 382.234 1135.61 346.703C1133.1 344.549 1131.84 341.857 1131.84 338.627C1131.84 336.115 1132.74 333.782 1134.53 331.629L1181.9 271.332C1184.05 268.102 1186.74 266.487 1189.97 266.487C1192.13 266.487 1194.64 267.564 1197.51 269.717C1211.86 281.561 1225.86 290.175 1239.49 295.559C1253.13 300.942 1268.02 303.634 1284.17 303.634C1314.32 303.634 1330.64 295.02 1333.16 277.793C1334.23 269.897 1330.82 263.616 1322.93 258.95C1315.39 253.926 1300.68 248.362 1278.79 242.261C1246.49 233.288 1220.83 219.65 1201.82 201.346C1182.8 182.683 1173.29 159.175 1173.29 130.821C1173.29 124.361 1173.82 117.362 1174.9 109.825C1181 72.14 1198.05 44.5043 1226.04 26.9179C1254.39 8.97263 1289.2 0 1330.46 0C1380.7 0 1424.48 13.2795 1461.8 39.8385C1465.03 41.9919 1466.65 44.6837 1466.65 47.9139C1466.65 50.0673 1465.75 52.4002 1463.96 54.9125L1411.74 117.362C1408.87 120.233 1406 121.669 1403.13 121.669C1402.06 121.669 1399.72 120.951 1396.13 119.515C1371.37 103.365 1345.54 95.2894 1318.62 95.2894C1306.06 95.2894 1296.73 97.0839 1290.63 100.673C1284.53 103.903 1280.94 109.287 1279.87 116.824C1278.79 124.002 1282.02 129.924 1289.55 134.589C1297.45 139.255 1310.55 144.459 1328.85 150.202C1349.66 157.021 1367.78 164.199 1383.22 171.736C1398.65 179.273 1412.1 190.399 1423.59 205.114C1435.43 219.471 1441.35 237.775 1441.35 260.027C1441.35 268.282 1440.27 277.613 1438.12 288.022Z" fill="#0D4243"/>
6
+ <path d="M1838.87 253.567C1830.62 300.583 1811.06 336.833 1780.2 362.315C1749.34 387.438 1708.97 400 1659.09 400C1632.89 400 1610.1 394.796 1590.72 384.388C1571.35 373.62 1556.45 358.546 1546.05 339.166C1535.64 319.426 1530.44 296.635 1530.44 270.794C1530.44 258.591 1531.51 246.03 1533.67 233.109L1549.82 142.665C1557.71 97.8017 1577.09 62.8084 1607.95 37.6851C1639.17 12.5617 1679 0 1727.45 0C1767.28 0 1798.86 11.1261 1822.18 33.3782C1845.87 55.6303 1857.71 86.6756 1857.71 126.514C1857.71 136.205 1856.45 148.946 1853.94 164.738L1838.87 253.567ZM1637.55 245.491C1636.48 251.952 1635.94 258.053 1635.94 263.795C1635.94 276.716 1639.17 286.765 1645.63 293.943C1652.09 300.763 1661.96 304.172 1675.23 304.172C1691.02 304.172 1703.94 299.148 1713.99 289.098C1724.04 279.049 1730.5 265.231 1733.37 247.645L1749.52 153.97C1750.59 147.51 1751.13 141.409 1751.13 135.666C1751.13 109.107 1738.39 95.8277 1712.91 95.8277C1697.12 95.8277 1684.21 100.673 1674.16 110.363C1664.47 120.054 1658.01 133.692 1654.78 151.279L1637.55 245.491Z" fill="#0D4243"/>
7
+ <path d="M1932.74 392.463C1929.15 392.463 1926.46 391.386 1924.66 389.233C1922.87 387.079 1922.33 384.208 1923.05 380.619L1987.1 17.2275C1988.18 10.7672 1991.95 7.53701 1998.41 7.53701H2082.92C2090.09 7.53701 2094.4 10.5877 2095.83 16.6891L2118.44 97.4428C2124.9 117.9 2131.54 141.409 2138.36 167.968C2145.54 194.168 2150.38 213.728 2152.89 226.649L2155.04 225.572C2159.35 185.733 2166.35 136.922 2176.04 79.1386L2187.34 17.2275C2188.42 10.7672 2192.19 7.53701 2198.65 7.53701H2278.85C2282.44 7.53701 2285.13 8.61372 2286.92 10.7671C2288.72 12.9206 2289.26 15.7918 2288.54 19.3809L2224.48 382.773C2223.41 389.233 2219.64 392.463 2213.18 392.463H2128.67C2122.57 392.463 2118.44 389.592 2116.29 383.849L2092.07 313.863C2084.53 293.405 2076.81 268.641 2068.92 239.569C2061.03 210.498 2055.64 187.707 2052.77 171.198L2050.62 172.275C2045.59 243.338 2039.67 297.712 2032.86 335.397L2024.78 382.773C2023.7 389.233 2019.94 392.463 2013.48 392.463H1932.74Z" fill="#0D4243"/>
8
+ <path d="M2335.18 392.463C2331.59 392.463 2328.9 391.386 2327.11 389.233C2324.95 387.079 2324.24 384.208 2324.95 380.619L2336.26 317.631C2337.33 312.607 2339.67 308.479 2343.26 305.249L2429.38 232.571C2458.45 207.806 2480.16 188.784 2494.51 175.505C2509.22 161.866 2519.45 150.92 2525.19 142.665C2530.94 134.41 2534.34 126.335 2535.42 118.439C2535.78 117.003 2535.96 115.029 2535.96 112.517C2535.96 106.057 2533.63 101.391 2528.96 98.5195C2524.3 95.2894 2516.58 93.6743 2505.82 93.6743C2482.85 93.6743 2459.7 103.903 2436.38 124.361C2433.15 126.873 2430.64 128.129 2428.84 128.129C2425.97 128.129 2423.46 126.155 2421.31 122.207L2389.01 65.6797C2387.57 62.0906 2386.86 59.7577 2386.86 58.681C2386.86 56.1687 2388.29 53.4769 2391.16 50.6056C2409.1 35.1727 2429.38 22.9699 2451.99 13.9973C2474.6 4.66577 2497.92 0 2521.96 0C2557.13 0 2584.94 8.79319 2605.4 26.3796C2625.85 43.607 2636.08 66.5769 2636.08 95.2894C2636.08 103.185 2635.36 110.543 2633.93 117.362C2631.06 136.384 2624.42 154.329 2614.01 171.198C2603.6 187.707 2586.38 208.524 2562.33 233.647C2530.4 263.437 2503.3 285.868 2481.05 300.942H2598.4C2601.99 300.942 2604.5 302.019 2605.94 304.172C2607.73 306.326 2608.45 309.197 2608.09 312.786L2595.71 382.773C2594.63 389.233 2590.68 392.463 2583.87 392.463H2335.18Z" fill="#0D4243"/>
9
+ <path d="M2850.09 392.463C2846.5 392.463 2843.81 391.386 2842.02 389.233C2840.22 387.079 2839.68 384.208 2840.4 380.619L2847.94 334.32H2693.99C2690.4 334.32 2687.71 333.244 2685.91 331.09C2684.48 328.937 2683.94 326.065 2684.3 322.476L2694.53 265.949C2695.6 260.206 2697.22 255.9 2699.37 253.028L2856.55 14.5357C2859.78 9.8699 2864.26 7.53701 2870.01 7.53701H2953.98C2960.08 7.53701 2963.13 9.8699 2963.13 14.5357C2963.13 16.6891 2962.41 18.6631 2960.97 20.4576L2814.56 244.953H2864.08L2886.69 180.888C2888.85 175.146 2892.97 172.275 2899.07 172.275H2963.13C2966.72 172.275 2969.41 173.351 2971.2 175.505C2973 177.658 2973.71 180.529 2973.36 184.118L2962.59 244.953H2989.5C2993.09 244.953 2995.78 246.209 2997.58 248.721C2999.73 250.875 3000.45 253.746 2999.73 257.335L2987.35 324.63C2986.27 331.09 2982.51 334.32 2976.05 334.32H2946.44L2938.37 382.773C2937.29 389.233 2933.34 392.463 2926.53 392.463H2850.09Z" fill="#0D4243"/>
10
+ </svg>
@@ -0,0 +1,26 @@
1
+ :root[data-season='24'] {
2
+ --font-heading: 'NotoSansMono', monospace;
3
+ --color-season: #edeaef;
4
+ --color-season-text: #5b21b6;
5
+ --color-accent: #7c3aed;
6
+ --color-accent-hover: #6d28d9;
7
+ --color-contrast: #ffffff;
8
+ --color-surface: #f9f5ff;
9
+ --color-surface-alt: #f3ebff;
10
+ --color-border: #ddd0f5;
11
+ --color-border-strong: #c4b0e8;
12
+ --logo-stroke-color: var(--color-season);
13
+ }
14
+
15
+ :root[data-season='24'][data-theme='dark'] {
16
+ --color-season: #1e1a24;
17
+ --color-season-text: #d0ccd6;
18
+ --color-accent: #a78bfa;
19
+ --color-accent-hover: #7c3aed;
20
+ --color-contrast: #ffffff;
21
+ --color-surface: #130a24;
22
+ --color-surface-alt: #1e1236;
23
+ --color-border: #2e1a52;
24
+ --color-border-strong: #4a2d7a;
25
+ --logo-stroke-color: var(--color-season);
26
+ }
@@ -0,0 +1,4 @@
1
+ <svg width="690" height="400" viewBox="0 0 690 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M0.279335 354.19C0.279335 322.719 10.2449 292.924 30.1758 264.804C50.293 236.685 82.3314 209.87 126.291 184.358C170.437 158.845 192.604 137.337 192.79 119.832C193.162 102.142 181.427 93.2961 157.585 93.2961C128.34 94.4134 112.973 105.68 111.483 127.095H0.279335C1.95577 92.4581 14.7152 62.6629 38.5579 37.7095C62.4005 12.5698 102.076 0 157.585 0C207.319 0 244.946 9.12477 270.465 27.3743C296.17 45.6238 309.023 72.3464 309.023 107.542C309.023 161.359 278.288 204.935 216.819 238.268C155.35 271.601 123.963 295.81 122.659 310.894H304.273V399.162H0L0.279335 354.19Z" fill="#9E3D14"/>
3
+ <path d="M491.622 137.709C507.082 128.398 528.224 123.743 555.047 123.743C581.87 123.743 605.154 127.84 624.898 136.033C644.829 144.227 660.662 158.939 672.397 180.168C684.133 201.21 690 228.119 690 260.894C690 304.842 675.285 339.013 645.854 363.408C616.61 387.803 580.007 400 536.047 400C479.235 398.883 437.603 387.151 411.153 364.804C384.889 342.458 370.546 311.08 368.125 270.67H485.755C487.058 297.114 502.426 310.521 531.856 310.894C561.287 310.894 576.747 293.948 578.238 260.056C576.747 222.812 563.802 202.421 539.4 198.883C514.999 195.158 496.745 199.907 484.637 213.128H376.507L409.197 0H669.883V91.6201H500.004L491.622 137.709Z" fill="#9E3D14"/>
4
+ </svg>
@@ -0,0 +1,2 @@
1
+ export { default as logoRaw } from './logo.svg?raw'
2
+ export { default as iconRaw } from './icon.svg?raw'
@@ -0,0 +1,10 @@
1
+ <svg width="3000" height="400" viewBox="0 0 3000 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M186.082 162.17C216.492 171.813 243.287 184.979 266.466 201.669C293.724 221.326 307.353 250.533 307.353 289.291C307.353 320.63 295.486 346.778 271.751 367.733C248.201 388.688 210.744 399.165 159.38 399.165C102.267 399.165 61.3796 387.668 36.7173 364.673C12.0551 341.493 -0.183355 308.948 0.00207572 267.038H113.207C114.506 296.894 129.896 311.822 159.38 311.822C181.261 311.822 191.923 304.312 191.367 289.291C191.367 269.263 169.764 251.831 126.559 236.996C83.3532 222.16 51.4591 205.192 30.8763 186.092C10.2935 166.991 0.00207572 141.771 0.00207572 110.431C0.00207572 79.0913 10.3862 52.9439 31.1544 31.9889C52.1081 11.0338 92.9955 0.556328 153.817 0.556328C201.472 0.556328 239.022 10.7557 266.466 31.1544C293.91 51.3676 306.612 83.3565 304.572 127.121H191.088C189.976 106.537 180.519 95.503 162.717 94.0195C145.102 92.3505 132.863 95.9666 126.002 104.868C119.327 113.769 120.068 123.134 128.227 132.962C136.386 142.791 155.671 152.527 186.082 162.17Z" fill="#9E3D14"/>
3
+ <path d="M475.779 240.056V311.544H678.269V399.722L360.348 400V0H678.269V91.2378H475.779V151.599H669.924V240.056H475.779Z" fill="#9E3D14"/>
4
+ <path d="M941.264 243.394L923.462 175.522L902.045 243.394H941.264ZM966.575 338.526H872.283L853.091 399.165H737.661L860.045 0H986.601L1097.86 399.165H982.429L966.575 338.526Z" fill="#9E3D14"/>
5
+ <path d="M1335.27 162.17C1365.68 171.813 1392.47 184.979 1415.65 201.669C1442.91 221.326 1456.54 250.533 1456.54 289.291C1456.54 320.63 1444.67 346.778 1420.93 367.733C1397.38 388.688 1359.93 399.165 1308.56 399.165C1251.45 399.165 1210.56 387.668 1185.9 364.673C1161.24 341.493 1149 308.948 1149.19 267.038H1262.39C1263.69 296.894 1279.08 311.822 1308.56 311.822C1330.44 311.822 1341.11 304.312 1340.55 289.291C1340.55 269.263 1318.95 251.831 1275.74 236.996C1232.54 222.16 1200.64 205.192 1180.06 186.092C1159.48 166.991 1149.19 141.771 1149.19 110.431C1149.19 79.0913 1159.57 52.9439 1180.34 31.9889C1201.29 11.0338 1242.18 0.556328 1303 0.556328C1350.66 0.556328 1388.21 10.7557 1415.65 31.1544C1443.09 51.3676 1455.8 83.3565 1453.76 127.121H1340.27C1339.16 106.537 1329.7 95.503 1311.9 94.0195C1294.29 92.3505 1282.05 95.9666 1275.19 104.868C1268.51 113.769 1269.25 123.134 1277.41 132.962C1285.57 142.791 1304.85 152.527 1335.27 162.17Z" fill="#9E3D14"/>
6
+ <path d="M1690.33 0.278164C1739.28 0.278164 1781 19.7497 1815.49 58.6926C1849.98 97.6356 1867.23 144.738 1867.23 200C1867.23 255.262 1849.98 302.364 1815.49 341.307C1781 380.25 1739.28 399.722 1690.33 399.722C1641.74 399.722 1600.21 380.25 1565.72 341.307C1531.23 302.364 1513.98 255.262 1513.98 200C1513.98 144.738 1531.23 97.6356 1565.72 58.6926C1600.21 19.7497 1641.74 0.278164 1690.33 0.278164ZM1735.39 123.783C1723.33 102.086 1708.87 91.2378 1692 91.2378C1674.94 91.2378 1660.38 102.086 1648.33 123.783C1636.27 145.294 1630.25 171.164 1630.25 201.391C1630.25 231.618 1636.27 257.58 1648.33 279.277C1660.38 300.788 1674.94 311.544 1692 311.544C1708.87 311.544 1723.33 300.788 1735.39 279.277C1747.44 257.58 1753.47 231.618 1753.47 201.391C1753.47 171.164 1747.44 145.294 1735.39 123.783Z" fill="#9E3D14"/>
7
+ <path d="M2042.05 229.764V399.165H1926.62V0H2050.39L2147.47 177.747V0H2262.9V399.165H2133.56L2042.05 229.764Z" fill="#9E3D14"/>
8
+ <path d="M2313.39 354.103C2313.39 322.763 2323.31 293.092 2343.15 265.09C2363.18 237.089 2395.07 210.385 2438.83 184.979C2482.78 159.573 2504.85 138.155 2505.03 120.723C2505.4 103.106 2493.72 94.2976 2469.99 94.2976C2440.87 95.4103 2425.57 106.63 2424.09 127.955H2313.39C2315.06 93.4631 2327.76 63.7923 2351.49 38.943C2375.23 13.9082 2414.73 1.39082 2469.99 1.39082C2519.5 1.39082 2556.95 10.4775 2582.36 28.6509C2607.95 46.8243 2620.74 73.4353 2620.74 108.484C2620.74 162.077 2590.14 205.471 2528.95 238.665C2467.76 271.859 2436.51 295.967 2435.22 310.987H2616.01V398.887H2313.11L2313.39 354.103Z" fill="#9E3D14"/>
9
+ <path d="M2802.52 138.526C2817.91 129.254 2838.95 124.618 2865.66 124.618C2892.36 124.618 2915.54 128.697 2935.19 136.857C2955.03 145.016 2970.79 159.666 2982.48 180.807C2994.16 201.762 3000 228.558 3000 261.196C3000 304.961 2985.35 338.989 2956.05 363.282C2926.94 387.575 2890.5 399.722 2846.74 399.722C2790.19 398.609 2748.74 386.926 2722.41 364.673C2696.26 342.42 2681.99 311.173 2679.58 270.932H2796.68C2797.97 297.265 2813.27 310.617 2842.57 310.987C2871.87 310.987 2887.26 294.112 2888.74 260.362C2887.26 223.273 2874.37 202.967 2850.08 199.444C2825.79 195.735 2807.62 200.464 2795.56 213.63H2687.92L2720.46 1.39082H2979.97V92.6286H2810.86L2802.52 138.526Z" fill="#9E3D14"/>
10
+ </svg>
@@ -0,0 +1,26 @@
1
+ :root[data-season='25'] {
2
+ --font-heading: 'NotoSansMono', monospace;
3
+ --color-season: #f0eae7;
4
+ --color-season-text: #9a3412;
5
+ --color-accent: #ec8266;
6
+ --color-accent-hover: #e06a4a;
7
+ --color-contrast: #ffffff;
8
+ --color-surface: #fff8f5;
9
+ --color-surface-alt: #fff0eb;
10
+ --color-border: #f5d5c8;
11
+ --color-border-strong: #ecb8a5;
12
+ --logo-stroke-color: var(--color-season);
13
+ }
14
+
15
+ :root[data-season='25'][data-theme='dark'] {
16
+ --color-season: #231c19;
17
+ --color-season-text: #d4cdc8;
18
+ --color-accent: #f0a08a;
19
+ --color-accent-hover: #ec8266;
20
+ --color-contrast: #ffffff;
21
+ --color-surface: #1a0f0a;
22
+ --color-surface-alt: #2a1a12;
23
+ --color-border: #3d2318;
24
+ --color-border-strong: #5a3425;
25
+ --logo-stroke-color: var(--color-season);
26
+ }
@@ -0,0 +1,4 @@
1
+ <svg width="645" height="400" viewBox="0 0 645 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M318.995 108.622C312.973 139.995 297.058 168.359 271.251 193.715C261.143 203.599 237.593 221.864 200.602 248.509C174.364 267.204 158.772 283.427 153.825 297.18H271.573C277.165 297.18 279.423 299.973 278.348 305.56L262.863 385.496C261.788 391.082 258.454 393.876 252.863 393.876H6.72078C1.34416 393.876 -0.806493 391.082 0.268831 385.496C11.0221 331.131 32.7436 285.576 65.4335 248.832C82.2086 230.137 110.597 207.145 150.599 179.855C180.063 159.656 196.193 142.358 198.989 127.961C199.419 126.457 199.634 124.953 199.634 123.449C199.634 110.126 187.805 103.465 164.148 103.465C136.62 103.465 104.898 110.771 68.9821 125.383C66.1862 126.672 63.6054 126.565 61.2397 125.06C58.874 123.556 58.0138 121.3 58.6589 118.292L75.434 31.9098C76.0792 28.2568 80.1654 24.7112 87.6927 21.2731C118.877 7.09105 157.911 0 204.796 0C242.432 0 271.466 8.16545 291.897 24.4964C311.468 39.7529 321.253 60.5963 321.253 87.0266C321.253 93.9028 320.5 101.101 318.995 108.622Z" fill="#07618D"/>
3
+ <path d="M633.553 267.848C625.81 307.386 607.53 338.974 578.711 362.611C548.817 387.537 511.826 400 467.738 400C429.671 400 399.992 390.545 378.701 371.636C358.485 353.371 348.377 328.66 348.377 297.502C348.377 288.047 349.344 278.163 351.28 267.848L375.797 141.499C383.97 99.812 403.433 65.8608 434.188 39.6454C465.157 13.2151 502.256 0 545.484 0C588.497 0 618.928 3.97529 636.779 11.9259C643.016 14.5044 645.704 17.9425 644.844 22.2401L629.359 102.498C628.714 105.506 626.886 107.87 623.875 109.589C621.079 111.093 618.391 111.308 615.81 110.234C597.314 102.068 573.119 97.9855 543.225 97.9855C529.461 97.9855 516.45 101.746 504.191 109.267C489.782 118.292 480.642 130.54 476.77 146.011C492.04 141.929 507.31 139.887 522.579 139.887C554.624 139.887 581.077 148.053 601.938 164.384C624.735 182.434 636.133 207.467 636.133 239.484C636.133 248.509 635.273 257.964 633.553 267.848ZM534.193 265.915C534.838 262.262 535.161 258.823 535.161 255.6C535.161 245.501 532.15 237.335 526.128 231.104C520.106 224.872 512.256 221.757 502.578 221.757C491.18 221.757 480.749 225.947 471.286 234.327C461.823 242.493 455.909 253.022 453.543 265.915C452.683 269.353 452.253 272.683 452.253 275.906C452.253 286.006 455.371 294.171 461.608 300.403C467.845 306.634 475.803 309.75 485.48 309.75C496.664 309.75 506.879 305.667 516.127 297.502C525.59 289.337 531.612 278.807 534.193 265.915Z" fill="#07618D"/>
4
+ </svg>
@@ -0,0 +1,2 @@
1
+ export { default as logoRaw } from './logo.svg?raw'
2
+ export { default as iconRaw } from './icon.svg?raw'
@@ -0,0 +1,10 @@
1
+ <svg width="3000" height="400" viewBox="0 0 3000 400" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M303.469 295.82C297.467 326.902 280.748 351.34 253.312 369.132C224.375 387.996 186.65 397.428 140.137 397.428C85.6928 397.428 40.8943 391.211 5.74143 378.778C0.382762 377.921 -1.22484 374.812 0.918629 369.453L32.1061 285.209C34.6783 278.349 38.7508 276.313 44.3239 279.1C53.5408 284.03 67.902 288.746 87.4076 293.248C107.127 297.535 123.739 299.678 137.243 299.678C165.751 299.678 180.005 292.176 180.005 277.17C180.005 268.167 169.61 255.413 148.818 238.907C118.166 214.684 98.9823 198.392 91.2658 190.032C70.6885 167.738 60.3999 145.016 60.3999 121.865C60.3999 81.9936 79.2624 50.911 116.987 28.6174C148.496 10.1822 185.686 0.964629 228.555 0.964629C285.143 0.964629 325.44 5.14469 349.447 13.5048C354.805 14.5766 356.413 17.7921 354.269 23.1511L323.082 107.395C320.938 113.183 316.866 115.113 310.864 113.183C275.283 102.251 246.667 96.7846 225.018 96.7846C204.012 96.7846 191.473 102.572 187.4 114.148C186.757 115.648 186.436 117.149 186.436 118.65C186.436 126.795 196.724 138.907 217.302 154.984C246.024 177.492 265.101 193.998 274.532 204.502C295.11 227.653 305.398 251.661 305.398 276.527C305.398 282.744 304.755 289.175 303.469 295.82Z" fill="#07618D"/>
3
+ <path d="M732.327 22.1865L709.178 112.54C707.677 118.114 704.676 120.472 700.175 119.614C672.096 113.398 638.229 110.289 598.575 110.289C543.487 110.289 513.586 122.508 508.87 146.945L506.62 157.878H689.565C695.138 157.878 697.389 160.665 696.317 166.238L682.813 235.691C681.741 241.265 678.526 244.051 673.167 244.051H489.901L487.329 256.913C487.114 259.057 487.007 260.986 487.007 262.701C487.007 283.28 512.407 293.569 563.207 293.569C603.29 293.569 638.229 291.211 668.023 286.495C670.381 286.066 672.096 286.602 673.167 288.103C674.239 289.389 674.453 291.211 673.81 293.569L660.306 384.244C659.878 388.103 657.842 390.461 654.198 391.318C633.835 394.962 595.467 396.785 539.093 396.785C481.648 396.785 439.529 389.282 412.736 374.277C384.013 357.985 369.652 331.833 369.652 295.82C369.652 284.673 370.938 272.562 373.51 259.486L396.017 144.373C405.662 94.6409 428.598 59.0568 464.822 37.6206C498.903 17.2562 548.953 7.07396 614.972 7.07396C631.691 7.07396 653.983 8.14576 681.848 10.2894C707.57 12.2186 723.324 13.8264 729.112 15.1125C732.327 15.7556 733.399 18.1136 732.327 22.1865Z" fill="#07618D"/>
4
+ <path d="M1063.52 385.531C1062.44 391.104 1059.23 393.891 1053.87 393.891H958.7C953.341 393.891 951.198 391.104 952.27 385.531L972.525 281.35H861.279L841.024 385.531C839.952 391.104 836.737 393.891 831.378 393.891H736.208C730.849 393.891 728.706 391.104 729.778 385.531L776.076 148.232C785.508 99.3569 808.872 62.1651 846.168 36.6559C880.035 13.5048 921.725 1.92926 971.239 1.92926C1014.32 1.92926 1048.19 10.7181 1072.84 28.2958C1099.85 47.5884 1113.35 75.8842 1113.35 113.183C1113.35 124.116 1112.17 135.798 1109.81 148.232L1063.52 385.531ZM989.244 194.534L997.282 153.055C998.14 148.767 998.568 144.695 998.568 140.836C998.568 114.469 983.028 101.286 951.948 101.286C935.229 101.286 920.975 105.681 909.186 114.469C897.182 123.901 889.573 136.763 886.358 153.055L878.32 194.534H989.244Z" fill="#07618D"/>
5
+ <path d="M1428.45 295.82C1422.45 326.902 1405.73 351.34 1378.29 369.132C1349.35 387.996 1311.63 397.428 1265.12 397.428C1210.67 397.428 1165.87 391.211 1130.72 378.778C1125.36 377.921 1123.75 374.812 1125.9 369.453L1157.09 285.209C1159.66 278.349 1163.73 276.313 1169.3 279.1C1178.52 284.03 1192.88 288.746 1212.39 293.248C1232.11 297.535 1248.72 299.678 1262.22 299.678C1290.73 299.678 1304.98 292.176 1304.98 277.17C1304.98 268.167 1294.59 255.413 1273.8 238.907C1243.15 214.684 1223.96 198.392 1216.25 190.032C1195.67 167.738 1185.38 145.016 1185.38 121.865C1185.38 81.9936 1204.24 50.911 1241.97 28.6174C1273.48 10.1822 1310.66 0.964629 1353.53 0.964629C1410.12 0.964629 1450.42 5.14469 1474.43 13.5048C1479.78 14.5766 1481.39 17.7921 1479.25 23.1511L1448.06 107.395C1445.92 113.183 1441.85 115.113 1435.84 113.183C1400.26 102.251 1371.65 96.7846 1350 96.7846C1328.99 96.7846 1316.45 102.572 1312.38 114.148C1311.74 115.648 1311.42 117.149 1311.42 118.65C1311.42 126.795 1321.7 138.907 1342.28 154.984C1371 177.492 1390.08 193.998 1399.51 204.502C1420.09 227.653 1430.38 251.661 1430.38 276.527C1430.38 282.744 1429.73 289.175 1428.45 295.82Z" fill="#07618D"/>
6
+ <path d="M1914.54 199.357C1903.61 256.592 1878.1 303.215 1838.02 339.228C1793.86 379.1 1738.99 399.035 1673.4 399.035C1616.81 399.035 1573.4 384.137 1543.18 354.341C1515.32 326.902 1501.38 290.354 1501.38 244.695C1501.38 230.118 1502.99 215.005 1506.21 199.357C1517.14 142.551 1543.29 95.9271 1584.66 59.4855C1629.67 19.8285 1685.08 0 1750.88 0C1806.83 0 1849.59 14.6838 1879.17 44.0514C1905.96 70.8467 1919.36 106.967 1919.36 152.412C1919.36 167.631 1917.75 183.28 1914.54 199.357ZM1794.29 199.357C1796.65 187.353 1797.83 176.42 1797.83 166.559C1797.83 122.401 1775.64 100.322 1731.27 100.322C1675.75 100.322 1641.67 133.333 1629.03 199.357C1626.67 211.147 1625.49 221.972 1625.49 231.833C1625.49 276.206 1647.89 298.392 1692.69 298.392C1747.56 298.392 1781.43 265.381 1794.29 199.357Z" fill="#07618D"/>
7
+ <path d="M2295.38 325.08C2290.88 347.588 2281.66 365.488 2267.73 378.778C2253.79 391.854 2237.29 398.392 2218.21 398.392C2192.06 398.392 2172.13 382.208 2158.41 349.839L2085.1 178.457L2044.59 385.531C2043.52 391.104 2040.31 393.891 2034.95 393.891H1946.53C1941.17 393.891 1939.03 391.104 1940.1 385.531L1999.9 77.492C2004.4 54.9839 2013.62 37.1918 2027.55 24.1157C2041.48 10.8253 2057.99 4.18007 2077.07 4.18007C2102.79 4.18007 2122.72 20.3644 2136.87 52.7331L2210.82 222.187L2250.69 16.7203C2251.76 11.3612 2254.97 8.68166 2260.33 8.68166H2348.75C2354.11 8.68166 2356.25 11.3612 2355.18 16.7203L2295.38 325.08Z" fill="#07618D"/>
8
+ <path d="M2675.08 109.325C2669.08 140.622 2653.22 168.917 2627.5 194.212C2617.42 204.073 2593.95 222.294 2557.09 248.875C2530.94 267.524 2515.39 283.708 2510.46 297.428H2627.82C2633.39 297.428 2635.64 300.214 2634.57 305.788L2619.14 385.531C2618.07 391.104 2614.74 393.891 2609.17 393.891H2363.85C2358.49 393.891 2356.35 391.104 2357.42 385.531C2368.14 331.297 2389.79 285.852 2422.37 249.196C2439.09 230.547 2467.38 207.61 2507.25 180.386C2536.62 160.236 2552.69 142.98 2555.48 128.617C2555.91 127.117 2556.12 125.616 2556.12 124.116C2556.12 110.825 2544.33 104.18 2520.75 104.18C2493.32 104.18 2461.7 111.468 2425.91 126.045C2423.12 127.331 2420.55 127.224 2418.19 125.723C2415.83 124.223 2414.97 121.972 2415.62 118.971L2432.34 32.7974C2432.98 29.1533 2437.05 25.6163 2444.55 22.1865C2475.63 8.03858 2514.54 0.964629 2561.27 0.964629C2598.78 0.964629 2627.71 9.11039 2648.08 25.4019C2667.58 40.6216 2677.33 61.4148 2677.33 87.7813C2677.33 94.6409 2676.58 101.822 2675.08 109.325Z" fill="#07618D"/>
9
+ <path d="M2988.59 268.167C2980.87 307.61 2962.65 339.121 2933.93 362.701C2904.14 387.567 2867.27 400 2823.33 400C2785.39 400 2755.81 390.568 2734.59 371.704C2714.44 353.483 2704.37 328.832 2704.37 297.749C2704.37 288.317 2705.33 278.457 2707.26 268.167L2731.7 142.122C2739.84 100.536 2759.24 66.6667 2789.89 40.5145C2820.76 14.1479 2857.73 0.964629 2900.82 0.964629C2943.69 0.964629 2974.02 4.93033 2991.81 12.8617C2998.02 15.4341 3000.7 18.8639 2999.84 23.1511L2984.41 103.215C2983.77 106.216 2981.95 108.574 2978.95 110.289C2976.16 111.79 2973.48 112.004 2970.91 110.932C2952.47 102.787 2928.36 98.7138 2898.57 98.7138C2884.85 98.7138 2871.88 102.465 2859.66 109.968C2845.3 118.971 2836.19 131.19 2832.33 146.624C2847.55 142.551 2862.77 140.514 2877.99 140.514C2909.93 140.514 2936.29 148.66 2957.08 164.952C2979.8 182.958 2991.16 207.931 2991.16 239.871C2991.16 248.875 2990.31 258.307 2988.59 268.167ZM2889.56 266.238C2890.21 262.594 2890.53 259.164 2890.53 255.949C2890.53 245.874 2887.53 237.728 2881.52 231.511C2875.52 225.295 2867.7 222.187 2858.05 222.187C2846.69 222.187 2836.3 226.367 2826.87 234.727C2817.44 242.872 2811.54 253.376 2809.18 266.238C2808.33 269.668 2807.9 272.99 2807.9 276.206C2807.9 286.281 2811 294.427 2817.22 300.643C2823.44 306.86 2831.37 309.968 2841.01 309.968C2852.16 309.968 2862.34 305.895 2871.56 297.749C2880.99 289.603 2886.99 279.1 2889.56 266.238Z" fill="#07618D"/>
10
+ </svg>
@@ -0,0 +1,26 @@
1
+ :root[data-season='26'] {
2
+ --font-heading: 'Kufam', sans-serif;
3
+ --color-season: #e7e9ec;
4
+ --color-season-text: #152038;
5
+ --color-accent: #152038;
6
+ --color-accent-hover: #0e1628;
7
+ --color-contrast: #f5c518;
8
+ --color-surface: #f5f7fa;
9
+ --color-surface-alt: #ebeef5;
10
+ --color-border: #c8ceda;
11
+ --color-border-strong: #a5afc2;
12
+ --logo-stroke-color: var(--color-season);
13
+ }
14
+
15
+ :root[data-season='26'][data-theme='dark'] {
16
+ --color-season: #171a22;
17
+ --color-season-text: #cacdd4;
18
+ --color-accent: #6b8fd4;
19
+ --color-accent-hover: #3b5998;
20
+ --color-contrast: #f5c518;
21
+ --color-surface: #0a0e18;
22
+ --color-surface-alt: #121a2a;
23
+ --color-border: #1e2d48;
24
+ --color-border-strong: #2d4268;
25
+ --logo-stroke-color: var(--color-season);
26
+ }