Blame
|
1 | <!DOCTYPE html> |
||||||
| 2 | <html lang="ru"> |
|||||||
| 3 | <head> |
|||||||
| 4 | <meta charset="UTF-8"> |
|||||||
| 5 | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
|||||||
| 6 | <title>SKIF.PRO — База знаний</title> |
|||||||
| 7 | <meta name="description" content="SKIF Wiki — база знаний на платформе OtterWiki"> |
|||||||
| 8 | <link rel="preconnect" href="https://fonts.googleapis.com"> |
|||||||
| 9 | <link href="https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap" rel="stylesheet"> |
|||||||
| 10 | <script>(function(){var t=localStorage.getItem('theme');if(!t)t=matchMedia('(prefers-color-scheme:dark)').matches?'dark':'light';document.documentElement.dataset.theme=t})()</script> |
|||||||
| 11 | <style> |
|||||||
| 12 | :root, [data-theme="light"] { |
|||||||
| 13 | --bg-base: #f4f6fb; |
|||||||
| 14 | --bg-raised: #ffffff; |
|||||||
| 15 | --bg-card: #ffffff; |
|||||||
| 16 | --bg-card-hover: #edf1fa; |
|||||||
| 17 | --border: #dfe4ee; |
|||||||
| 18 | --border-hover: rgba(56,142,255,0.35); |
|||||||
| 19 | --text: #1a1f2e; |
|||||||
| 20 | --text-dim: #5c6478; |
|||||||
| 21 | --text-muted: #9aa2b5; |
|||||||
| 22 | --accent: #2b7ff2; |
|||||||
| 23 | --accent-light: #1a6ad8; |
|||||||
| 24 | --accent-soft: rgba(56,142,255,0.08); |
|||||||
| 25 | --accent-glow: rgba(56,142,255,0.04); |
|||||||
| 26 | --orange: #e86a10; |
|||||||
| 27 | --radius: 14px; |
|||||||
| 28 | --radius-sm: 10px; |
|||||||
| 29 | --header-bg: rgba(244,246,251,0.88); |
|||||||
| 30 | --card-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 1px 2px rgba(0,0,0,0.06); |
|||||||
| 31 | --card-hover-shadow: 0 8px 28px rgba(0,0,0,0.08); |
|||||||
| 32 | --hero-glow-1: rgba(56,142,255,0.06); |
|||||||
| 33 | --hero-glow-2: rgba(56,142,255,0.03); |
|||||||
| 34 | --hero-grid: rgba(56,142,255,0.03); |
|||||||
| 35 | --search-focus-shadow: 0 0 0 3px rgba(56,142,255,0.12), 0 8px 24px rgba(0,0,0,0.08); |
|||||||
| 36 | } |
|||||||
| 37 | ||||||||
| 38 | [data-theme="dark"] { |
|||||||
| 39 | --bg-base: #090c14; |
|||||||
| 40 | --bg-raised: #0f1320; |
|||||||
| 41 | --bg-card: #141927; |
|||||||
| 42 | --bg-card-hover: #191f33; |
|||||||
| 43 | --border: #1e2640; |
|||||||
| 44 | --border-hover: rgba(56,142,255,0.35); |
|||||||
| 45 | --text: #e4e8f1; |
|||||||
| 46 | --text-dim: #7c849a; |
|||||||
| 47 | --text-muted: #4a5068; |
|||||||
| 48 | --accent: #388eff; |
|||||||
| 49 | --accent-light: #5ea4ff; |
|||||||
| 50 | --accent-soft: rgba(56,142,255,0.1); |
|||||||
| 51 | --accent-glow: rgba(56,142,255,0.06); |
|||||||
| 52 | --header-bg: rgba(9,12,20,0.85); |
|||||||
| 53 | --card-shadow: none; |
|||||||
| 54 | --card-hover-shadow: 0 8px 28px rgba(0,0,0,0.25); |
|||||||
| 55 | --hero-glow-1: rgba(56,142,255,0.07); |
|||||||
| 56 | --hero-glow-2: rgba(56,142,255,0.04); |
|||||||
| 57 | --hero-grid: rgba(56,142,255,0.025); |
|||||||
| 58 | --search-focus-shadow: 0 0 0 3px rgba(56,142,255,0.15), 0 8px 24px rgba(0,0,0,0.3); |
|||||||
| 59 | } |
|||||||
| 60 | ||||||||
| 61 | *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } |
|||||||
| 62 | ||||||||
| 63 | body { |
|||||||
| 64 | font-family: 'Onest', -apple-system, BlinkMacSystemFont, sans-serif; |
|||||||
| 65 | background: var(--bg-base); |
|||||||
| 66 | color: var(--text); |
|||||||
| 67 | min-height: 100vh; |
|||||||
| 68 | -webkit-font-smoothing: antialiased; |
|||||||
| 69 | -moz-osx-font-smoothing: grayscale; |
|||||||
| 70 | } |
|||||||
| 71 | ||||||||
| 72 | /* ═══ HEADER ═══ */ |
|||||||
| 73 | .header { |
|||||||
| 74 | display: flex; |
|||||||
| 75 | align-items: center; |
|||||||
| 76 | justify-content: space-between; |
|||||||
| 77 | padding: 0 40px; |
|||||||
| 78 | height: 60px; |
|||||||
| 79 | background: var(--header-bg); |
|||||||
| 80 | backdrop-filter: blur(16px); |
|||||||
| 81 | -webkit-backdrop-filter: blur(16px); |
|||||||
| 82 | border-bottom: 1px solid var(--border); |
|||||||
| 83 | position: sticky; |
|||||||
| 84 | top: 0; |
|||||||
| 85 | z-index: 100; |
|||||||
| 86 | } |
|||||||
| 87 | .header-left { |
|||||||
| 88 | display: flex; |
|||||||
| 89 | align-items: center; |
|||||||
| 90 | gap: 14px; |
|||||||
| 91 | } |
|||||||
| 92 | .logo-img { |
|||||||
| 93 | height: 28px; |
|||||||
| 94 | width: auto; |
|||||||
| 95 | object-fit: contain; |
|||||||
| 96 | } |
|||||||
| 97 | .header-divider { |
|||||||
| 98 | width: 1px; |
|||||||
| 99 | height: 20px; |
|||||||
| 100 | background: var(--border); |
|||||||
| 101 | } |
|||||||
| 102 | .header-label { |
|||||||
| 103 | font-size: 13px; |
|||||||
| 104 | color: var(--text-dim); |
|||||||
| 105 | font-weight: 500; |
|||||||
| 106 | } |
|||||||
| 107 | .header-right { |
|||||||
| 108 | display: flex; |
|||||||
| 109 | align-items: center; |
|||||||
| 110 | gap: 8px; |
|||||||
| 111 | } |
|||||||
| 112 | .header-link { |
|||||||
| 113 | font-size: 13px; |
|||||||
| 114 | font-weight: 500; |
|||||||
| 115 | color: var(--text-dim); |
|||||||
| 116 | text-decoration: none; |
|||||||
| 117 | padding: 7px 14px; |
|||||||
| 118 | border-radius: 8px; |
|||||||
| 119 | transition: all 0.15s; |
|||||||
| 120 | } |
|||||||
| 121 | .header-link:hover { |
|||||||
| 122 | color: var(--text); |
|||||||
| 123 | background: var(--accent-soft); |
|||||||
| 124 | } |
|||||||
| 125 | ||||||||
| 126 | /* ═══ HERO ═══ */ |
|||||||
| 127 | .hero { |
|||||||
| 128 | position: relative; |
|||||||
| 129 | text-align: center; |
|||||||
| 130 | padding: 72px 40px 64px; |
|||||||
| 131 | overflow: hidden; |
|||||||
| 132 | } |
|||||||
| 133 | .hero::before { |
|||||||
| 134 | content: ''; |
|||||||
| 135 | position: absolute; |
|||||||
| 136 | inset: 0; |
|||||||
| 137 | background: |
|||||||
| 138 | radial-gradient(ellipse 60% 50% at 50% 0%, var(--hero-glow-1) 0%, transparent 70%), |
|||||||
| 139 | radial-gradient(ellipse 40% 60% at 80% 20%, var(--hero-glow-2) 0%, transparent 60%); |
|||||||
| 140 | pointer-events: none; |
|||||||
| 141 | } |
|||||||
| 142 | .hero::after { |
|||||||
| 143 | content: ''; |
|||||||
| 144 | position: absolute; |
|||||||
| 145 | inset: 0; |
|||||||
| 146 | background-image: |
|||||||
| 147 | linear-gradient(35deg, var(--hero-grid) 1px, transparent 1px), |
|||||||
| 148 | linear-gradient(-35deg, var(--hero-grid) 1px, transparent 1px); |
|||||||
| 149 | background-size: 40px 40px; |
|||||||
| 150 | mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, black, transparent); |
|||||||
| 151 | -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 30%, black, transparent); |
|||||||
| 152 | pointer-events: none; |
|||||||
| 153 | } |
|||||||
| 154 | .hero-inner { |
|||||||
| 155 | position: relative; |
|||||||
| 156 | z-index: 1; |
|||||||
| 157 | max-width: 640px; |
|||||||
| 158 | margin: 0 auto; |
|||||||
| 159 | } |
|||||||
| 160 | .hero h1 { |
|||||||
| 161 | font-size: 40px; |
|||||||
| 162 | font-weight: 700; |
|||||||
| 163 | letter-spacing: -0.8px; |
|||||||
| 164 | line-height: 1.15; |
|||||||
| 165 | margin-bottom: 16px; |
|||||||
| 166 | } |
|||||||
| 167 | .hero p { |
|||||||
| 168 | font-size: 16px; |
|||||||
| 169 | line-height: 1.65; |
|||||||
| 170 | color: var(--text-dim); |
|||||||
| 171 | max-width: 480px; |
|||||||
| 172 | margin: 0 auto 36px; |
|||||||
| 173 | } |
|||||||
| 174 | ||||||||
| 175 | /* ═══ SEARCH ═══ */ |
|||||||
| 176 | .search-box { |
|||||||
| 177 | position: relative; |
|||||||
| 178 | max-width: 520px; |
|||||||
| 179 | margin: 0 auto; |
|||||||
| 180 | } |
|||||||
| 181 | .search-box svg { |
|||||||
| 182 | position: absolute; |
|||||||
| 183 | left: 20px; |
|||||||
| 184 | top: 50%; |
|||||||
| 185 | transform: translateY(-50%); |
|||||||
| 186 | width: 18px; |
|||||||
| 187 | height: 18px; |
|||||||
| 188 | stroke: var(--text-muted); |
|||||||
| 189 | fill: none; |
|||||||
| 190 | stroke-width: 2; |
|||||||
| 191 | stroke-linecap: round; |
|||||||
| 192 | pointer-events: none; |
|||||||
| 193 | } |
|||||||
| 194 | .search-box input { |
|||||||
| 195 | width: 100%; |
|||||||
| 196 | height: 52px; |
|||||||
| 197 | padding: 0 20px 0 52px; |
|||||||
| 198 | background: var(--bg-card); |
|||||||
| 199 | border: 1px solid var(--border); |
|||||||
| 200 | border-radius: 26px; |
|||||||
| 201 | color: var(--text); |
|||||||
| 202 | font-size: 14px; |
|||||||
| 203 | font-family: inherit; |
|||||||
| 204 | outline: none; |
|||||||
| 205 | transition: all 0.2s; |
|||||||
| 206 | } |
|||||||
| 207 | .search-box input::placeholder { color: var(--text-muted); } |
|||||||
| 208 | .search-box input:focus { |
|||||||
| 209 | border-color: var(--accent); |
|||||||
| 210 | box-shadow: var(--search-focus-shadow); |
|||||||
| 211 | } |
|||||||
| 212 | .search-hint { |
|||||||
| 213 | margin-top: 10px; |
|||||||
| 214 | font-size: 12px; |
|||||||
| 215 | color: var(--text-muted); |
|||||||
| 216 | } |
|||||||
| 217 | ||||||||
| 218 | /* ═══ QUICK LINKS ═══ */ |
|||||||
| 219 | .quick-bar { |
|||||||
| 220 | display: flex; |
|||||||
| 221 | gap: 10px; |
|||||||
| 222 | flex-wrap: wrap; |
|||||||
| 223 | justify-content: center; |
|||||||
| 224 | padding: 0 40px; |
|||||||
| 225 | margin-bottom: 40px; |
|||||||
| 226 | } |
|||||||
| 227 | .quick-bar a { |
|||||||
| 228 | display: inline-flex; |
|||||||
| 229 | align-items: center; |
|||||||
| 230 | gap: 7px; |
|||||||
| 231 | padding: 9px 18px; |
|||||||
| 232 | font-size: 13px; |
|||||||
| 233 | font-weight: 500; |
|||||||
| 234 | color: var(--text-dim); |
|||||||
| 235 | background: var(--bg-card); |
|||||||
| 236 | border: 1px solid var(--border); |
|||||||
| 237 | border-radius: 100px; |
|||||||
| 238 | text-decoration: none; |
|||||||
| 239 | transition: all 0.2s; |
|||||||
| 240 | } |
|||||||
| 241 | .quick-bar a:hover { |
|||||||
| 242 | color: var(--text); |
|||||||
| 243 | border-color: var(--border-hover); |
|||||||
| 244 | background: var(--bg-card-hover); |
|||||||
| 245 | box-shadow: 0 0 0 3px var(--accent-glow); |
|||||||
| 246 | } |
|||||||
| 247 | .quick-bar a svg { |
|||||||
| 248 | width: 14px; height: 14px; |
|||||||
| 249 | stroke: currentColor; fill: none; |
|||||||
| 250 | stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; |
|||||||
| 251 | } |
|||||||
| 252 | ||||||||
| 253 | /* ═══ CONTENT ═══ */ |
|||||||
| 254 | .content { |
|||||||
| 255 | max-width: 1120px; |
|||||||
| 256 | margin: 0 auto; |
|||||||
| 257 | padding: 0 40px 80px; |
|||||||
| 258 | } |
|||||||
| 259 | ||||||||
| 260 | /* ═══ SECTION LABEL ═══ */ |
|||||||
| 261 | .section-label { |
|||||||
| 262 | font-size: 11px; |
|||||||
| 263 | font-weight: 600; |
|||||||
| 264 | text-transform: uppercase; |
|||||||
| 265 | letter-spacing: 1.8px; |
|||||||
| 266 | color: var(--text-muted); |
|||||||
| 267 | margin-bottom: 16px; |
|||||||
| 268 | padding-left: 2px; |
|||||||
| 269 | } |
|||||||
| 270 | .section-label .planned { |
|||||||
| 271 | color: var(--orange); |
|||||||
| 272 | font-weight: 700; |
|||||||
| 273 | letter-spacing: 1px; |
|||||||
| 274 | margin-left: 6px; |
|||||||
| 275 | } |
|||||||
| 276 | ||||||||
| 277 | /* ═══ CARD GRID ═══ */ |
|||||||
| 278 | .card-grid { |
|||||||
| 279 | display: grid; |
|||||||
| 280 | grid-template-columns: 1fr 1fr; |
|||||||
| 281 | gap: 14px; |
|||||||
| 282 | margin-bottom: 40px; |
|||||||
| 283 | } |
|||||||
| 284 | .card-grid.cols-3 { |
|||||||
| 285 | grid-template-columns: 1fr 1fr 1fr; |
|||||||
| 286 | } |
|||||||
| 287 | ||||||||
| 288 | .card { |
|||||||
| 289 | background: var(--bg-card); |
|||||||
| 290 | border: 1px solid var(--border); |
|||||||
| 291 | border-radius: var(--radius); |
|||||||
| 292 | padding: 32px 28px 26px; |
|||||||
| 293 | text-align: center; |
|||||||
| 294 | box-shadow: var(--card-shadow); |
|||||||
| 295 | transition: all 0.22s ease; |
|||||||
| 296 | position: relative; |
|||||||
| 297 | overflow: hidden; |
|||||||
| 298 | } |
|||||||
| 299 | .card::after { |
|||||||
| 300 | content: ''; |
|||||||
| 301 | position: absolute; |
|||||||
| 302 | top: 0; left: 50%; |
|||||||
| 303 | transform: translateX(-50%) scaleX(0); |
|||||||
| 304 | width: 40px; height: 2.5px; |
|||||||
| 305 | background: var(--accent); |
|||||||
| 306 | border-radius: 0 0 3px 3px; |
|||||||
| 307 | transition: transform 0.22s ease; |
|||||||
| 308 | } |
|||||||
| 309 | .card:hover { |
|||||||
| 310 | border-color: var(--border-hover); |
|||||||
| 311 | background: var(--bg-card-hover); |
|||||||
| 312 | transform: translateY(-2px); |
|||||||
| 313 | box-shadow: var(--card-hover-shadow); |
|||||||
| 314 | } |
|||||||
| 315 | .card:hover::after { transform: translateX(-50%) scaleX(1); } |
|||||||
| 316 | ||||||||
| 317 | .card.planned { opacity: 0.55; } |
|||||||
| 318 | .card.planned:hover { opacity: 0.75; } |
|||||||
| 319 | ||||||||
| 320 | .card-icon { |
|||||||
| 321 | width: 46px; height: 46px; |
|||||||
| 322 | border-radius: var(--radius-sm); |
|||||||
| 323 | background: var(--accent-soft); |
|||||||
| 324 | display: inline-flex; |
|||||||
| 325 | align-items: center; justify-content: center; |
|||||||
| 326 | margin-bottom: 16px; |
|||||||
| 327 | transition: all 0.2s; |
|||||||
| 328 | } |
|||||||
| 329 | .card-icon svg { |
|||||||
| 330 | width: 21px; height: 21px; |
|||||||
| 331 | stroke: var(--accent); fill: none; |
|||||||
| 332 | stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; |
|||||||
| 333 | } |
|||||||
| 334 | .card:hover .card-icon { background: var(--accent); } |
|||||||
| 335 | .card:hover .card-icon svg { stroke: #fff; } |
|||||||
| 336 | ||||||||
| 337 | .card h3 { |
|||||||
| 338 | font-size: 16px; |
|||||||
| 339 | font-weight: 600; |
|||||||
| 340 | margin-bottom: 6px; |
|||||||
| 341 | letter-spacing: -0.1px; |
|||||||
| 342 | } |
|||||||
| 343 | .card p { |
|||||||
| 344 | font-size: 13px; |
|||||||
| 345 | line-height: 1.55; |
|||||||
| 346 | color: var(--text-dim); |
|||||||
| 347 | margin-bottom: 18px; |
|||||||
| 348 | } |
|||||||
| 349 | .card-links { |
|||||||
| 350 | display: flex; |
|||||||
| 351 | justify-content: center; |
|||||||
| 352 | gap: 16px; |
|||||||
| 353 | flex-wrap: wrap; |
|||||||
| 354 | align-items: center; |
|||||||
| 355 | } |
|||||||
| 356 | .card-links a { |
|||||||
| 357 | font-size: 12.5px; |
|||||||
| 358 | font-weight: 500; |
|||||||
| 359 | color: var(--accent); |
|||||||
| 360 | text-decoration: none; |
|||||||
| 361 | transition: color 0.15s; |
|||||||
| 362 | } |
|||||||
| 363 | .card-links a:hover { |
|||||||
| 364 | color: var(--accent-light); |
|||||||
| 365 | text-decoration: underline; |
|||||||
| 366 | text-underline-offset: 3px; |
|||||||
| 367 | } |
|||||||
| 368 | .badge { |
|||||||
| 369 | display: inline-block; |
|||||||
| 370 | font-size: 9px; |
|||||||
| 371 | font-weight: 700; |
|||||||
| 372 | color: #fff; |
|||||||
| 373 | background: var(--orange); |
|||||||
| 374 | border-radius: 4px; |
|||||||
| 375 | padding: 2px 6px; |
|||||||
| 376 | letter-spacing: 0.5px; |
|||||||
| 377 | vertical-align: middle; |
|||||||
| 378 | } |
|||||||
| 379 | ||||||||
| 380 | /* ═══ FOOTER ═══ */ |
|||||||
| 381 | .footer { |
|||||||
| 382 | border-top: 1px solid var(--border); |
|||||||
| 383 | padding: 28px 40px; |
|||||||
| 384 | text-align: center; |
|||||||
| 385 | font-size: 13px; |
|||||||
| 386 | color: var(--text-muted); |
|||||||
| 387 | } |
|||||||
| 388 | .footer a { |
|||||||
| 389 | color: var(--accent); |
|||||||
| 390 | text-decoration: none; |
|||||||
| 391 | } |
|||||||
| 392 | .footer a:hover { text-decoration: underline; } |
|||||||
| 393 | ||||||||
| 394 | /* ═══ THEME TOGGLE ═══ */ |
|||||||
| 395 | .theme-toggle { |
|||||||
| 396 | background: none; |
|||||||
| 397 | border: 1px solid var(--border); |
|||||||
| 398 | border-radius: 8px; |
|||||||
| 399 | padding: 7px; |
|||||||
| 400 | cursor: pointer; |
|||||||
| 401 | display: flex; |
|||||||
| 402 | align-items: center; |
|||||||
| 403 | justify-content: center; |
|||||||
| 404 | color: var(--text-dim); |
|||||||
| 405 | transition: all 0.15s; |
|||||||
| 406 | } |
|||||||
| 407 | .theme-toggle:hover { |
|||||||
| 408 | color: var(--text); |
|||||||
| 409 | background: var(--accent-soft); |
|||||||
| 410 | } |
|||||||
| 411 | .theme-toggle svg { |
|||||||
| 412 | width: 16px; |
|||||||
| 413 | height: 16px; |
|||||||
| 414 | stroke: currentColor; |
|||||||
| 415 | fill: none; |
|||||||
| 416 | stroke-width: 2; |
|||||||
| 417 | stroke-linecap: round; |
|||||||
| 418 | stroke-linejoin: round; |
|||||||
| 419 | } |
|||||||
| 420 | .theme-toggle .icon-sun { display: none; } |
|||||||
| 421 | .theme-toggle .icon-moon { display: block; } |
|||||||
| 422 | [data-theme="dark"] .theme-toggle .icon-sun { display: block; } |
|||||||
| 423 | [data-theme="dark"] .theme-toggle .icon-moon { display: none; } |
|||||||
| 424 | ||||||||
| 425 | /* ═══ RESPONSIVE ═══ */ |
|||||||
| 426 | @media (max-width: 768px) { |
|||||||
| 427 | .card-grid, .card-grid.cols-3 { grid-template-columns: 1fr; } |
|||||||
| 428 | .hero { padding: 48px 20px 40px; } |
|||||||
| 429 | .hero h1 { font-size: 28px; } |
|||||||
| 430 | .content, .quick-bar { padding-left: 20px; padding-right: 20px; } |
|||||||
| 431 | .header { padding: 0 20px; } |
|||||||
| 432 | } |
|||||||
| 433 | ||||||||
| 434 | /* ═══ ANIMATIONS ═══ */ |
|||||||
| 435 | @keyframes fadeUp { |
|||||||
| 436 | from { opacity: 0; transform: translateY(14px); } |
|||||||
| 437 | to { opacity: 1; transform: translateY(0); } |
|||||||
| 438 | } |
|||||||
| 439 | .hero-inner { animation: fadeUp 0.5s ease-out; } |
|||||||
| 440 | .quick-bar { animation: fadeUp 0.5s ease-out 0.05s backwards; } |
|||||||
| 441 | .card { animation: fadeUp 0.45s ease-out backwards; } |
|||||||
| 442 | .card:nth-child(1) { animation-delay: 0.08s; } |
|||||||
| 443 | .card:nth-child(2) { animation-delay: 0.12s; } |
|||||||
| 444 | .card:nth-child(3) { animation-delay: 0.16s; } |
|||||||
| 445 | .card:nth-child(4) { animation-delay: 0.20s; } |
|||||||
| 446 | .card:nth-child(5) { animation-delay: 0.24s; } |
|||||||
| 447 | .card:nth-child(6) { animation-delay: 0.28s; } |
|||||||
| 448 | </style> |
|||||||
| 449 | </head> |
|||||||
| 450 | <body> |
|||||||
| 451 | ||||||||
| 452 | <!-- ═══════ HEADER ═══════ --> |
|||||||
| 453 | <header class="header"> |
|||||||
| 454 | <div class="header-left"> |
|||||||
| 455 | <img src="/logo.webp" alt="SKIF.PRO" class="logo-img"> |
|||||||
| 456 | <div class="header-divider"></div> |
|||||||
| 457 | <span class="header-label">SKIF Wiki</span> |
|||||||
| 458 | </div> |
|||||||
| 459 | <div class="header-right"> |
|||||||
| 460 | <a class="header-link" href="https://skif.pro" target="_blank">Платформа</a> |
|||||||
| 461 | <a class="header-link" href="/-/view/home">Wiki</a> |
|||||||
| 462 | <button class="theme-toggle" id="themeToggle" aria-label="Переключить тему"> |
|||||||
| 463 | <svg class="icon-moon" viewBox="0 0 24 24"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg> |
|||||||
| 464 | <svg class="icon-sun" viewBox="0 0 24 24"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg> |
|||||||
| 465 | </button> |
|||||||
| 466 | </div> |
|||||||
| 467 | </header> |
|||||||
| 468 | ||||||||
| 469 | <!-- ═══════ HERO ═══════ --> |
|||||||
| 470 | <section class="hero"> |
|||||||
| 471 | <div class="hero-inner"> |
|||||||
| 472 | <h1>SKIF Wiki</h1> |
|||||||
| 473 | <p>Добро пожаловать в базу знаний SKIF.PRO. Документация, руководства и инструкции на платформе OtterWiki.</p> |
|||||||
| 474 | <div class="search-box"> |
|||||||
| 475 | <svg viewBox="0 0 24 24"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/></svg> |
|||||||
| 476 | <input type="text" id="searchInput" placeholder="Поиск по wiki..." autocomplete="off"> |
|||||||
| 477 | </div> |
|||||||
| 478 | </div> |
|||||||
| 479 | </section> |
|||||||
| 480 | ||||||||
| 481 | <!-- ═══════ QUICK LINKS ═══════ --> |
|||||||
| 482 | <div class="quick-bar"> |
|||||||
| 483 | <a href="/-/view/home"> |
|||||||
| 484 | <svg viewBox="0 0 24 24"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"/></svg> |
|||||||
| 485 | Главная страница Wiki |
|||||||
| 486 | </a> |
|||||||
| 487 | <a href="/-/allpages"> |
|||||||
| 488 | <svg viewBox="0 0 24 24"><line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><line x1="3" y1="6" x2="3.01" y2="6"/><line x1="3" y1="12" x2="3.01" y2="12"/><line x1="3" y1="18" x2="3.01" y2="18"/></svg> |
|||||||
| 489 | Все страницы |
|||||||
| 490 | </a> |
|||||||
| 491 | <a href="/-/register"> |
|||||||
| 492 | <svg viewBox="0 0 24 24"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="8.5" cy="7" r="4"/><line x1="20" y1="8" x2="20" y2="14"/><line x1="23" y1="11" x2="17" y2="11"/></svg> |
|||||||
| 493 | Регистрация |
|||||||
| 494 | </a> |
|||||||
| 495 | <a href="/-/admin" style="color: var(--orange);"> |
|||||||
| 496 | <svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 8.82a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg> |
|||||||
| 497 | Админ-панель |
|||||||
| 498 | </a> |
|||||||
| 499 | </div> |
|||||||
| 500 | ||||||||
| 501 | <!-- ═══════ CARDS ═══════ --> |
|||||||
| 502 | <div class="content"> |
|||||||
| 503 | ||||||||
| 504 | <!-- ── Разделы Wiki ── --> |
|||||||
| 505 | <div class="section-label">Разделы базы знаний</div> |
|||||||
| 506 | <div class="card-grid"> |
|||||||
| 507 | ||||||||
| 508 | <a href="/-/view/Начинающим" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 509 | <div class="card-icon"> |
|||||||
| 510 | <svg viewBox="0 0 24 24"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"/></svg> |
|||||||
| 511 | </div> |
|||||||
| 512 | <h3>Начинающим</h3> |
|||||||
| 513 | <p>Основы работы с системой. Первые шаги и руководства для новичков.</p> |
|||||||
| 514 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 515 | </a> |
|||||||
| 516 | ||||||||
| 517 | <a href="/-/view/Установка" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 518 | <div class="card-icon"> |
|||||||
| 519 | <svg viewBox="0 0 24 24"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><polyline points="7 10 12 15 17 10"/><line x1="12" y1="15" x2="12" y2="3"/></svg> |
|||||||
| 520 | </div> |
|||||||
| 521 | <h3>Установка</h3> |
|||||||
| 522 | <p>Инструкции по установке и настройке всех компонентов системы.</p> |
|||||||
| 523 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 524 | </a> |
|||||||
| 525 | ||||||||
| 526 | <a href="/-/view/Конфигурация" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 527 | <div class="card-icon"> |
|||||||
| 528 | <svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 8.82a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"/></svg> |
|||||||
| 529 | </div> |
|||||||
| 530 | <h3>Конфигурация</h3> |
|||||||
| 531 | <p>Подробное описание всех настроек и параметров конфигурации.</p> |
|||||||
| 532 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 533 | </a> |
|||||||
| 534 | ||||||||
| 535 | <a href="/-/view/API" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 536 | <div class="card-icon"> |
|||||||
| 537 | <svg viewBox="0 0 24 24"><polyline points="16 18 22 12 16 6"/><polyline points="8 6 2 12 8 18"/></svg> |
|||||||
| 538 | </div> |
|||||||
| 539 | <h3>API</h3> |
|||||||
| 540 | <p>Документация по API, примеры запросов и интеграции.</p> |
|||||||
| 541 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 542 | </a> |
|||||||
| 543 | ||||||||
| 544 | <a href="/-/view/Траблшутинг" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 545 | <div class="card-icon"> |
|||||||
| 546 | <svg viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg> |
|||||||
| 547 | </div> |
|||||||
| 548 | <h3>Траблшутинг</h3> |
|||||||
| 549 | <p>Решение проблем и frequently asked questions.</p> |
|||||||
| 550 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 551 | </a> |
|||||||
| 552 | ||||||||
| 553 | <a href="/-/view/Глоссарий" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 554 | <div class="card-icon"> |
|||||||
| 555 | <svg viewBox="0 0 24 24"><path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"/><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"/></svg> |
|||||||
| 556 | </div> |
|||||||
| 557 | <h3>Глоссарий</h3> |
|||||||
| 558 | <p>Словарь терминов и сокращений, используемых в проекте.</p> |
|||||||
| 559 | <div class="card-links">Открыть раздел →</div> |
|||||||
| 560 | </a> |
|||||||
| 561 | ||||||||
| 562 | </div> |
|||||||
| 563 | ||||||||
| 564 | <!-- ── Быстрый старт ── --> |
|||||||
| 565 | <div class="section-label">Быстрый старт</div> |
|||||||
| 566 | <div class="card-grid cols-3"> |
|||||||
| 567 | ||||||||
| 568 | <a href="/-/register" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 569 | <div class="card-icon"> |
|||||||
| 570 | <svg viewBox="0 0 24 24"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="8.5" cy="7" r="4"/><line x1="20" y1="8" x2="20" y2="14"/><line x1="23" y1="11" x2="17" y2="11"/></svg> |
|||||||
| 571 | </div> |
|||||||
| 572 | <h3>Регистрация</h3> |
|||||||
| 573 | <p>Создайте аккаунт для редактирования страниц.</p> |
|||||||
| 574 | <div class="card-links">Зарегистрироваться →</div> |
|||||||
| 575 | </a> |
|||||||
| 576 | ||||||||
| 577 | <a href="/-/view/Начинающим" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 578 | <div class="card-icon"> |
|||||||
| 579 | <svg viewBox="0 0 24 24"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg> |
|||||||
| 580 | </div> |
|||||||
| 581 | <h3>Руководства</h3> |
|||||||
| 582 | <p>Пошаговые инструкции для начинающих.</p> |
|||||||
| 583 | <div class="card-links">Читать →</div> |
|||||||
| 584 | </a> |
|||||||
| 585 | ||||||||
| 586 | <a href="/-/allpages" class="card" style="text-decoration: none; color: inherit;"> |
|||||||
| 587 | <div class="card-icon"> |
|||||||
| 588 | <svg viewBox="0 0 24 24"><line x1="8" y1="6" x2="21" y2="6"/><line x1="8" y1="12" x2="21" y2="12"/><line x1="8" y1="18" x2="21" y2="18"/><line x1="3" y1="6" x2="3.01" y2="6"/><line x1="3" y1="12" x2="3.01" y2="12"/><line x1="3" y1="18" x2="3.01" y2="18"/></svg> |
|||||||
| 589 | </div> |
|||||||
| 590 | <h3>Все страницы</h3> |
|||||||
| 591 | <p>Просмотр всех страниц в базе знаний.</p> |
|||||||
| 592 | <div class="card-links">Открыть →</div> |
|||||||
| 593 | </a> |
|||||||
| 594 | ||||||||
| 595 | </div> |
|||||||
| 596 | ||||||||
| 597 | </div> |
|||||||
| 598 | ||||||||
| 599 | <!-- ═══════ FOOTER ═══════ --> |
|||||||
| 600 | <footer class="footer"> |
|||||||
| 601 | © 2025 SKIF.PRO · <a href="https://skif.pro" target="_blank">Платформа</a> · <a href="/-/view/home">Wiki Home</a> |
|||||||
| 602 | </footer> |
|||||||
| 603 | ||||||||
| 604 | <!-- ═══════ SEARCH → OTTERWIKI ═══════ --> |
|||||||
| 605 | <script> |
|||||||
| 606 | const searchInput = document.getElementById('searchInput'); |
|||||||
| 607 | ||||||||
| 608 | // Redirect search to OtterWiki search |
|||||||
| 609 | searchInput.addEventListener('keydown', (e) => { |
|||||||
| 610 | if (e.key === 'Enter') { |
|||||||
| 611 | const q = searchInput.value.trim(); |
|||||||
| 612 | if (q) { |
|||||||
| 613 | window.location.href = '/-/search?q=' + encodeURIComponent(q); |
|||||||
| 614 | } |
|||||||
| 615 | } |
|||||||
| 616 | }); |
|||||||
| 617 | ||||||||
| 618 | // Cmd/Ctrl+K focus |
|||||||
| 619 | document.addEventListener('keydown', (e) => { |
|||||||
| 620 | if ((e.metaKey || e.ctrlKey) && e.key === 'k') { |
|||||||
| 621 | e.preventDefault(); |
|||||||
| 622 | searchInput.focus(); |
|||||||
| 623 | searchInput.select(); |
|||||||
| 624 | } |
|||||||
| 625 | }); |
|||||||
| 626 | ||||||||
| 627 | // Theme toggle |
|||||||
| 628 | document.getElementById('themeToggle').addEventListener('click', () => { |
|||||||
| 629 | const current = document.documentElement.dataset.theme; |
|||||||
| 630 | const next = current === 'dark' ? 'light' : 'dark'; |
|||||||
| 631 | document.documentElement.dataset.theme = next; |
|||||||
| 632 | localStorage.setItem('theme', next); |
|||||||
| 633 | }); |
|||||||
| 634 | ||||||||
| 635 | // Cross-tab sync |
|||||||
| 636 | window.addEventListener('storage', (e) => { |
|||||||
| 637 | if (e.key === 'theme' && e.newValue) { |
|||||||
| 638 | document.documentElement.dataset.theme = e.newValue; |
|||||||
| 639 | } |
|||||||
| 640 | }); |
|||||||
| 641 | </script> |
|||||||
| 642 | ||||||||
| 643 | </body> |
|||||||
| 644 | </html> |
|||||||