File size: 1,190 Bytes
2d4a4d2
 
 
 
f3451f7
 
 
 
 
 
 
 
 
 
 
 
 
 
2d4a4d2
f3451f7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
:root {
    --board-width: 400px;
}

body {
	font-family: Arial;
	max-width: 1200px;
	margin: 50px auto;
	padding: 20px;
}

.container {
	display: flex;
	gap: 40px;
	margin: 20px 0;
}

#board {
	width: var(--board-width);
}

.info-panel {
	flex: 1;
}

.info-panel h3 {
	margin-top: 0;
}

button {
	padding: 10px 20px;
	margin: 5px;
	cursor: pointer;
}

#fen {
	background: #f0f0f0;
	padding: 10px;
	margin: 10px 0;
	font-family: monospace;
}

#results {
	margin-top: 15px;
}

.pagination {
	text-align: center;
	margin: 20px 0;
}

.pagination button {
	padding: 10px 20px;
	margin: 0 5px;
}

.pagination button:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.puzzle-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 16px;
}

.puzzle {
	border: 1px solid #ddd;
	padding: 12px;
}

.puzzle-board {
	width: 100%;
	aspect-ratio: 1;
}

.puzzle-info h3 {
	margin: 8px 0 4px;
	font-size: 14px;
}

.puzzle-info p {
	margin: 4px 0;
	font-size: 12px;
}

.puzzle-info a {
	color: #0066cc;
}

.themes {
	display: flex;
	gap: 5px;
	flex-wrap: wrap;
	margin: 5px 0;
}

.theme {
	background: #e0e0e0;
	padding: 3px 8px;
	border-radius: 3px;
	font-size: 11px;
}