arcanea 3.0.0

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 (105) hide show
  1. package/CLAUDE.md +169 -0
  2. package/README.md +376 -0
  3. package/agents/arcanea-ai-specialist.md +732 -0
  4. package/agents/arcanea-architect.md +351 -0
  5. package/agents/arcanea-backend.md +809 -0
  6. package/agents/arcanea-character-crafter.md +381 -0
  7. package/agents/arcanea-development.md +304 -0
  8. package/agents/arcanea-devops.md +736 -0
  9. package/agents/arcanea-frontend.md +543 -0
  10. package/agents/arcanea-lore-master.md +366 -0
  11. package/agents/arcanea-master-orchestrator.md +223 -0
  12. package/agents/arcanea-story-master.md +144 -0
  13. package/agents/arcanea-world-expander.md +380 -0
  14. package/agents/coding/arcanea-architect.md +72 -0
  15. package/agents/coding/arcanea-coder.md +78 -0
  16. package/agents/coding/arcanea-debugger.md +113 -0
  17. package/agents/coding/arcanea-reviewer.md +102 -0
  18. package/agents/creation-architect.md +176 -0
  19. package/agents/design-sage.md +213 -0
  20. package/agents/developer-documentation.md +373 -0
  21. package/agents/developer-qa-engineer.md +345 -0
  22. package/agents/luminor-oracle.md +125 -0
  23. package/agents/production/format-master.md +208 -0
  24. package/agents/production/sound-designer.md +199 -0
  25. package/agents/production/visual-director.md +176 -0
  26. package/agents/prompt-sage.md +227 -0
  27. package/agents/research/archivist.md +174 -0
  28. package/agents/research/muse.md +163 -0
  29. package/agents/research/sage.md +177 -0
  30. package/agents/research/scout.md +143 -0
  31. package/agents/teacher-assessor.md +287 -0
  32. package/agents/teacher-companion.md +243 -0
  33. package/agents/teacher-curriculum-designer.md +261 -0
  34. package/agents/teacher-mentor.md +175 -0
  35. package/agents/visionary-futurist.md +290 -0
  36. package/agents/visionary-innovator.md +291 -0
  37. package/agents/visionary-strategist.md +321 -0
  38. package/agents/visionary-synthesizer.md +310 -0
  39. package/agents/writing/continuity-guardian.md +156 -0
  40. package/agents/writing/line-editor.md +129 -0
  41. package/agents/writing/prose-weaver.md +113 -0
  42. package/agents/writing/story-architect.md +96 -0
  43. package/agents/writing/voice-alchemist.md +124 -0
  44. package/commands/arcanea-author.md +177 -0
  45. package/commands/arcanea-build.md +241 -0
  46. package/commands/arcanea-council.md +143 -0
  47. package/commands/arcanea-db.md +272 -0
  48. package/commands/arcanea-deploy.md +176 -0
  49. package/commands/arcanea-dev.md +29 -0
  50. package/commands/arcanea-lore-expand.md +142 -0
  51. package/commands/arcanea-sync.md +281 -0
  52. package/commands/arcanea-team.md +130 -0
  53. package/commands/arcanea-test.md +151 -0
  54. package/commands/bestiary.md +38 -0
  55. package/commands/character-forge.md +55 -0
  56. package/commands/check-continuity.md +119 -0
  57. package/commands/compose-theme.md +134 -0
  58. package/commands/craft-prompt.md +40 -0
  59. package/commands/edit-chapter.md +118 -0
  60. package/commands/export-book.md +146 -0
  61. package/commands/luminor.md +46 -0
  62. package/commands/outline-story.md +79 -0
  63. package/commands/story-help.md +40 -0
  64. package/commands/teacher-team.md +43 -0
  65. package/commands/ultrabook.md +147 -0
  66. package/commands/ultraworld.md +201 -0
  67. package/commands/ultrawrite.md +103 -0
  68. package/commands/visionary-team.md +78 -0
  69. package/commands/visualize.md +126 -0
  70. package/commands/world-build.md +41 -0
  71. package/commands/write-chapter.md +97 -0
  72. package/dist/cli/index.d.ts +3 -0
  73. package/dist/cli/index.d.ts.map +1 -0
  74. package/dist/cli/index.js +2675 -0
  75. package/dist/index.d.ts +117 -0
  76. package/dist/index.d.ts.map +1 -0
  77. package/dist/index.js +425 -0
  78. package/dist/install.d.ts +13 -0
  79. package/dist/install.d.ts.map +1 -0
  80. package/package.json +54 -0
  81. package/skills/ai-symbiosis.md +266 -0
  82. package/skills/arcanea/arcanea-anti-trope.md +60 -0
  83. package/skills/arcanea/arcanea-canon/SKILL.md +596 -0
  84. package/skills/arcanea/arcanea-creator-academy/SKILL.md +418 -0
  85. package/skills/arcanea/arcanea-design-system/SKILL.md +626 -0
  86. package/skills/arcanea/arcanea-lore/ENHANCEMENT_SUMMARY.md +908 -0
  87. package/skills/arcanea/arcanea-lore/ONBOARDING_NARRATIVES.md +642 -0
  88. package/skills/arcanea/arcanea-lore/SKILL.md +1534 -0
  89. package/skills/arcanea/arcanea-voice/SKILL.md +510 -0
  90. package/skills/arcanea/centaur-mode/SKILL.md +399 -0
  91. package/skills/arcanea/design-system/SKILL.md +601 -0
  92. package/skills/arcanea/luminor-wisdom/SKILL.md +359 -0
  93. package/skills/arcanea/prompt-craft/SKILL.md +400 -0
  94. package/skills/character-alchemist.md +242 -0
  95. package/skills/creative/bestiary-nav/SKILL.md +425 -0
  96. package/skills/creative/character-forge/SKILL.md +443 -0
  97. package/skills/creative/story-weave/SKILL.md +441 -0
  98. package/skills/creative/world-build/SKILL.md +513 -0
  99. package/skills/creative-bestiary.md +231 -0
  100. package/skills/development/code-review/SKILL.md +412 -0
  101. package/skills/development/systematic-debug/SKILL.md +480 -0
  102. package/skills/development/tdd/SKILL.md +450 -0
  103. package/skills/luminor-council.md +241 -0
  104. package/skills/story-weaver.md +308 -0
  105. package/skills/world-architect.md +253 -0
@@ -0,0 +1,626 @@
1
+ ---
2
+ name: Arcanea Design System
3
+ description: Complete visual design language for Arcanea - cosmic theme tokens, component patterns, animation standards, and Academy-specific aesthetics
4
+ version: 1.0.0
5
+ ---
6
+
7
+ # Arcanea Design System Skill
8
+
9
+ ## Purpose
10
+
11
+ This skill defines the complete visual design language for Arcanea, ensuring consistent, magical, and accessible interfaces across all platform features. Every component should feel like it belongs in the Kingdom of Light.
12
+
13
+ ## Design Philosophy
14
+
15
+ ### Core Principles
16
+
17
+ 1. **Cosmic Elegance** - Dark, starlit backgrounds with luminous accents
18
+ 2. **Magical Realism** - Fantastical elements grounded in usable UI
19
+ 3. **Academy Identity** - Distinct visual languages for each Academy
20
+ 4. **Accessible Magic** - Beauty that doesn't sacrifice usability
21
+ 5. **Responsive Fluidity** - Adapts gracefully across all devices
22
+
23
+ ### The Arcanean Aesthetic
24
+
25
+ **What It Is:**
26
+ - Dark, cosmic backgrounds
27
+ - Gradient glows and light effects
28
+ - Floating, ethereal elements
29
+ - Subtle particle systems
30
+ - Crystalline and fluid forms
31
+ - Smooth, flowing animations
32
+
33
+ **What It Isn't:**
34
+ - Flat, corporate design
35
+ - Harsh, angular brutalism
36
+ - Cluttered fantasy kitsch
37
+ - Inaccessible effects-only
38
+ - Static, lifeless layouts
39
+
40
+ ## Color System
41
+
42
+ ### Core Palette
43
+
44
+ ```css
45
+ /* Cosmic Foundation */
46
+ --arcanea-cosmic-950: #050510; /* Deepest void */
47
+ --arcanea-cosmic-900: #0a0a1a; /* Primary background */
48
+ --arcanea-cosmic-800: #121230; /* Elevated surfaces */
49
+ --arcanea-cosmic-700: #1a1a45; /* Cards and containers */
50
+ --arcanea-cosmic-600: #252560; /* Borders and dividers */
51
+
52
+ /* Primary - Violet Magic */
53
+ --arcanea-primary-50: #f5f3ff;
54
+ --arcanea-primary-100: #ede9fe;
55
+ --arcanea-primary-200: #ddd6fe;
56
+ --arcanea-primary-300: #c4b5fd;
57
+ --arcanea-primary-400: #a78bfa;
58
+ --arcanea-primary-500: #8b5cf6; /* Primary action */
59
+ --arcanea-primary-600: #7c3aed;
60
+ --arcanea-primary-700: #6d28d9;
61
+ --arcanea-primary-800: #5b21b6;
62
+ --arcanea-primary-900: #4c1d95;
63
+
64
+ /* Accent - Cyan Glow */
65
+ --arcanea-accent-50: #ecfeff;
66
+ --arcanea-accent-100: #cffafe;
67
+ --arcanea-accent-200: #a5f3fc;
68
+ --arcanea-accent-300: #67e8f9;
69
+ --arcanea-accent-400: #22d3ee;
70
+ --arcanea-accent-500: #06b6d4; /* Secondary action */
71
+ --arcanea-accent-600: #0891b2;
72
+ --arcanea-accent-700: #0e7490;
73
+ --arcanea-accent-800: #155e75;
74
+ --arcanea-accent-900: #164e63;
75
+
76
+ /* Gold - Achievement */
77
+ --arcanea-gold-50: #fffbeb;
78
+ --arcanea-gold-100: #fef3c7;
79
+ --arcanea-gold-200: #fde68a;
80
+ --arcanea-gold-300: #fcd34d;
81
+ --arcanea-gold-400: #fbbf24;
82
+ --arcanea-gold-500: #f59e0b; /* Achievement, premium */
83
+ --arcanea-gold-600: #d97706;
84
+ --arcanea-gold-700: #b45309;
85
+ --arcanea-gold-800: #92400e;
86
+ --arcanea-gold-900: #78350f;
87
+
88
+ /* Text */
89
+ --arcanea-text-primary: #ffffff;
90
+ --arcanea-text-secondary: rgba(255, 255, 255, 0.7);
91
+ --arcanea-text-tertiary: rgba(255, 255, 255, 0.5);
92
+ --arcanea-text-muted: rgba(255, 255, 255, 0.3);
93
+
94
+ /* Semantic */
95
+ --arcanea-success: #10b981;
96
+ --arcanea-warning: #f59e0b;
97
+ --arcanea-error: #ef4444;
98
+ --arcanea-info: #3b82f6;
99
+ ```
100
+
101
+ ### Academy Color Palettes
102
+
103
+ ```css
104
+ /* Atlantean Academy - Water & Wisdom */
105
+ --atlantean-deep: #0a2540; /* Deep ocean */
106
+ --atlantean-primary: #0ea5e9; /* Bright water */
107
+ --atlantean-secondary: #06b6d4; /* Teal current */
108
+ --atlantean-accent: #5eead4; /* Bioluminescence */
109
+ --atlantean-glow: rgba(14, 165, 233, 0.3);
110
+
111
+ /* Draconic Academy - Fire & Sky */
112
+ --draconic-shadow: #1c0a0a; /* Ember darkness */
113
+ --draconic-primary: #ef4444; /* Dragon fire */
114
+ --draconic-secondary: #f97316; /* Flame orange */
115
+ --draconic-accent: #fbbf24; /* Gold scale */
116
+ --draconic-sky: #38bdf8; /* Sky blue */
117
+ --draconic-glow: rgba(239, 68, 68, 0.3);
118
+
119
+ /* Creation & Light Academy - Sound & Light */
120
+ --creation-void: #0a0a1a; /* Musical silence */
121
+ --creation-primary: #f5f5f5; /* Pure light */
122
+ --creation-secondary: #8b5cf6; /* Violet frequency */
123
+ --creation-accent: #f59e0b; /* Golden note */
124
+ --creation-prismatic: linear-gradient(90deg,
125
+ #ef4444, #f97316, #fbbf24, #22c55e,
126
+ #3b82f6, #8b5cf6, #ec4899);
127
+ --creation-glow: rgba(245, 245, 245, 0.2);
128
+ ```
129
+
130
+ ## Typography
131
+
132
+ ### Font Stack
133
+
134
+ ```css
135
+ /* Display - For heroes and major headings */
136
+ --font-display: 'Cal Sans', 'Inter', system-ui, sans-serif;
137
+
138
+ /* Body - For all content */
139
+ --font-body: 'Inter', system-ui, -apple-system, sans-serif;
140
+
141
+ /* Mono - For code and technical content */
142
+ --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
143
+ ```
144
+
145
+ ### Type Scale
146
+
147
+ ```css
148
+ /* Base: 16px */
149
+ --text-xs: 0.75rem; /* 12px */
150
+ --text-sm: 0.875rem; /* 14px */
151
+ --text-base: 1rem; /* 16px */
152
+ --text-lg: 1.125rem; /* 18px */
153
+ --text-xl: 1.25rem; /* 20px */
154
+ --text-2xl: 1.5rem; /* 24px */
155
+ --text-3xl: 1.875rem; /* 30px */
156
+ --text-4xl: 2.25rem; /* 36px */
157
+ --text-5xl: 3rem; /* 48px */
158
+ --text-6xl: 3.75rem; /* 60px */
159
+ --text-7xl: 4.5rem; /* 72px */
160
+ ```
161
+
162
+ ### Line Heights
163
+
164
+ ```css
165
+ --leading-none: 1;
166
+ --leading-tight: 1.25;
167
+ --leading-snug: 1.375;
168
+ --leading-normal: 1.5;
169
+ --leading-relaxed: 1.625;
170
+ --leading-loose: 2;
171
+ ```
172
+
173
+ ## Spacing System
174
+
175
+ ### Base Scale
176
+
177
+ ```css
178
+ /* 4px base */
179
+ --space-0: 0;
180
+ --space-1: 0.25rem; /* 4px */
181
+ --space-2: 0.5rem; /* 8px */
182
+ --space-3: 0.75rem; /* 12px */
183
+ --space-4: 1rem; /* 16px */
184
+ --space-5: 1.25rem; /* 20px */
185
+ --space-6: 1.5rem; /* 24px */
186
+ --space-8: 2rem; /* 32px */
187
+ --space-10: 2.5rem; /* 40px */
188
+ --space-12: 3rem; /* 48px */
189
+ --space-16: 4rem; /* 64px */
190
+ --space-20: 5rem; /* 80px */
191
+ --space-24: 6rem; /* 96px */
192
+ ```
193
+
194
+ ## Border Radius
195
+
196
+ ```css
197
+ --radius-none: 0;
198
+ --radius-sm: 0.25rem; /* 4px */
199
+ --radius-md: 0.375rem; /* 6px */
200
+ --radius-lg: 0.5rem; /* 8px */
201
+ --radius-xl: 0.75rem; /* 12px */
202
+ --radius-2xl: 1rem; /* 16px */
203
+ --radius-3xl: 1.5rem; /* 24px */
204
+ --radius-full: 9999px;
205
+ ```
206
+
207
+ ## Shadows & Effects
208
+
209
+ ### Glow Effects
210
+
211
+ ```css
212
+ /* Standard Glows */
213
+ --glow-primary: 0 0 20px rgba(139, 92, 246, 0.4);
214
+ --glow-accent: 0 0 20px rgba(6, 182, 212, 0.4);
215
+ --glow-gold: 0 0 20px rgba(245, 158, 11, 0.4);
216
+
217
+ /* Academy Glows */
218
+ --glow-atlantean: 0 0 30px rgba(14, 165, 233, 0.3);
219
+ --glow-draconic: 0 0 30px rgba(239, 68, 68, 0.3);
220
+ --glow-creation: 0 0 30px rgba(255, 255, 255, 0.2);
221
+
222
+ /* Interactive States */
223
+ --glow-hover: 0 0 40px rgba(139, 92, 246, 0.5);
224
+ --glow-focus: 0 0 0 3px rgba(139, 92, 246, 0.3);
225
+ --glow-active: 0 0 60px rgba(139, 92, 246, 0.6);
226
+ ```
227
+
228
+ ### Box Shadows
229
+
230
+ ```css
231
+ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.2);
232
+ --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.3);
233
+ --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.4);
234
+ --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.5);
235
+ --shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.6);
236
+
237
+ /* Cosmic Shadows (with glow) */
238
+ --shadow-cosmic:
239
+ 0 10px 15px rgba(0, 0, 0, 0.4),
240
+ 0 0 20px rgba(139, 92, 246, 0.1);
241
+ --shadow-cosmic-lg:
242
+ 0 20px 25px rgba(0, 0, 0, 0.5),
243
+ 0 0 40px rgba(139, 92, 246, 0.15);
244
+ ```
245
+
246
+ ### Gradients
247
+
248
+ ```css
249
+ /* Background Gradients */
250
+ --gradient-cosmic: linear-gradient(180deg,
251
+ var(--arcanea-cosmic-900) 0%,
252
+ var(--arcanea-cosmic-950) 100%);
253
+
254
+ --gradient-surface: linear-gradient(135deg,
255
+ rgba(255, 255, 255, 0.05) 0%,
256
+ rgba(255, 255, 255, 0.02) 100%);
257
+
258
+ /* Accent Gradients */
259
+ --gradient-primary: linear-gradient(135deg,
260
+ var(--arcanea-primary-500) 0%,
261
+ var(--arcanea-primary-600) 100%);
262
+
263
+ --gradient-glow: linear-gradient(135deg,
264
+ var(--arcanea-primary-500) 0%,
265
+ var(--arcanea-accent-500) 100%);
266
+
267
+ /* Academy Gradients */
268
+ --gradient-atlantean: linear-gradient(180deg,
269
+ rgba(14, 165, 233, 0.2) 0%,
270
+ transparent 100%);
271
+
272
+ --gradient-draconic: linear-gradient(180deg,
273
+ rgba(239, 68, 68, 0.2) 0%,
274
+ transparent 100%);
275
+
276
+ --gradient-creation: radial-gradient(ellipse at center,
277
+ rgba(255, 255, 255, 0.1) 0%,
278
+ transparent 70%);
279
+ ```
280
+
281
+ ## Animation Standards
282
+
283
+ ### Timing Functions
284
+
285
+ ```css
286
+ --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
287
+ --ease-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
288
+ --ease-elastic: cubic-bezier(0.68, -0.6, 0.32, 1.6);
289
+ --ease-spring: cubic-bezier(0.175, 0.885, 0.32, 1.275);
290
+ ```
291
+
292
+ ### Duration Scale
293
+
294
+ ```css
295
+ --duration-instant: 50ms;
296
+ --duration-fast: 150ms;
297
+ --duration-normal: 250ms;
298
+ --duration-slow: 400ms;
299
+ --duration-slower: 600ms;
300
+ --duration-slowest: 1000ms;
301
+ ```
302
+
303
+ ### Common Animations
304
+
305
+ ```css
306
+ /* Fade In */
307
+ @keyframes fadeIn {
308
+ from { opacity: 0; }
309
+ to { opacity: 1; }
310
+ }
311
+
312
+ /* Slide Up */
313
+ @keyframes slideUp {
314
+ from {
315
+ opacity: 0;
316
+ transform: translateY(20px);
317
+ }
318
+ to {
319
+ opacity: 1;
320
+ transform: translateY(0);
321
+ }
322
+ }
323
+
324
+ /* Scale In */
325
+ @keyframes scaleIn {
326
+ from {
327
+ opacity: 0;
328
+ transform: scale(0.95);
329
+ }
330
+ to {
331
+ opacity: 1;
332
+ transform: scale(1);
333
+ }
334
+ }
335
+
336
+ /* Glow Pulse */
337
+ @keyframes glowPulse {
338
+ 0%, 100% { box-shadow: 0 0 20px rgba(139, 92, 246, 0.4); }
339
+ 50% { box-shadow: 0 0 40px rgba(139, 92, 246, 0.6); }
340
+ }
341
+
342
+ /* Float */
343
+ @keyframes float {
344
+ 0%, 100% { transform: translateY(0); }
345
+ 50% { transform: translateY(-10px); }
346
+ }
347
+
348
+ /* Shimmer (for loading) */
349
+ @keyframes shimmer {
350
+ 0% { background-position: -200% 0; }
351
+ 100% { background-position: 200% 0; }
352
+ }
353
+
354
+ /* Star Twinkle */
355
+ @keyframes twinkle {
356
+ 0%, 100% { opacity: 0.3; }
357
+ 50% { opacity: 1; }
358
+ }
359
+ ```
360
+
361
+ ### Framer Motion Variants
362
+
363
+ ```typescript
364
+ // Standard Transitions
365
+ export const transitions = {
366
+ spring: { type: "spring", stiffness: 300, damping: 30 },
367
+ smooth: { type: "tween", ease: [0.4, 0, 0.2, 1], duration: 0.25 },
368
+ bounce: { type: "spring", stiffness: 400, damping: 10 },
369
+ };
370
+
371
+ // Fade In
372
+ export const fadeIn = {
373
+ initial: { opacity: 0 },
374
+ animate: { opacity: 1 },
375
+ exit: { opacity: 0 },
376
+ transition: transitions.smooth,
377
+ };
378
+
379
+ // Slide Up
380
+ export const slideUp = {
381
+ initial: { opacity: 0, y: 20 },
382
+ animate: { opacity: 1, y: 0 },
383
+ exit: { opacity: 0, y: 20 },
384
+ transition: transitions.spring,
385
+ };
386
+
387
+ // Scale
388
+ export const scale = {
389
+ initial: { opacity: 0, scale: 0.95 },
390
+ animate: { opacity: 1, scale: 1 },
391
+ exit: { opacity: 0, scale: 0.95 },
392
+ transition: transitions.spring,
393
+ };
394
+
395
+ // Stagger Container
396
+ export const stagger = {
397
+ animate: {
398
+ transition: {
399
+ staggerChildren: 0.1,
400
+ },
401
+ },
402
+ };
403
+ ```
404
+
405
+ ## Component Patterns
406
+
407
+ ### Cards
408
+
409
+ ```tsx
410
+ // Base Card
411
+ <div className="
412
+ bg-arcanea-cosmic-800/50
413
+ backdrop-blur-sm
414
+ border border-arcanea-cosmic-600/50
415
+ rounded-2xl
416
+ p-6
417
+ transition-all duration-300
418
+ hover:border-arcanea-primary-500/50
419
+ hover:shadow-cosmic
420
+ ">
421
+
422
+ // Academy Card (Atlantean example)
423
+ <div className="
424
+ bg-gradient-to-br from-atlantean-deep/80 to-arcanea-cosmic-800/50
425
+ backdrop-blur-sm
426
+ border border-atlantean-primary/30
427
+ rounded-2xl
428
+ p-6
429
+ shadow-[0_0_20px_rgba(14,165,233,0.1)]
430
+ transition-all duration-300
431
+ hover:shadow-glow-atlantean
432
+ hover:border-atlantean-primary/50
433
+ ">
434
+ ```
435
+
436
+ ### Buttons
437
+
438
+ ```tsx
439
+ // Primary Button
440
+ <button className="
441
+ px-6 py-3
442
+ bg-gradient-to-r from-arcanea-primary-500 to-arcanea-primary-600
443
+ hover:from-arcanea-primary-400 hover:to-arcanea-primary-500
444
+ text-white font-medium
445
+ rounded-xl
446
+ shadow-glow-primary
447
+ transition-all duration-300
448
+ hover:shadow-glow-hover
449
+ hover:-translate-y-0.5
450
+ focus:outline-none focus:ring-2 focus:ring-arcanea-primary-400/50
451
+ ">
452
+
453
+ // Ghost Button
454
+ <button className="
455
+ px-6 py-3
456
+ bg-transparent
457
+ border border-arcanea-cosmic-600
458
+ hover:border-arcanea-primary-500
459
+ hover:bg-arcanea-primary-500/10
460
+ text-arcanea-text-secondary
461
+ hover:text-arcanea-text-primary
462
+ rounded-xl
463
+ transition-all duration-300
464
+ ">
465
+ ```
466
+
467
+ ### Inputs
468
+
469
+ ```tsx
470
+ // Text Input
471
+ <input className="
472
+ w-full px-4 py-3
473
+ bg-arcanea-cosmic-800/50
474
+ border border-arcanea-cosmic-600
475
+ rounded-xl
476
+ text-arcanea-text-primary
477
+ placeholder:text-arcanea-text-muted
478
+ transition-all duration-300
479
+ focus:outline-none
480
+ focus:border-arcanea-primary-500
481
+ focus:ring-2 focus:ring-arcanea-primary-500/20
482
+ focus:shadow-glow-focus
483
+ " />
484
+ ```
485
+
486
+ ### Luminor Presence Indicator
487
+
488
+ ```tsx
489
+ // Luminor Avatar with Glow
490
+ <div className="relative">
491
+ <div className="
492
+ w-12 h-12
493
+ rounded-full
494
+ bg-gradient-to-br from-arcanea-primary-400 to-arcanea-accent-500
495
+ shadow-glow-primary
496
+ animate-[glowPulse_3s_ease-in-out_infinite]
497
+ ">
498
+ <img src={luminor.avatar} className="w-full h-full rounded-full" />
499
+ </div>
500
+
501
+ {/* Online Indicator */}
502
+ <div className="
503
+ absolute bottom-0 right-0
504
+ w-3 h-3
505
+ bg-arcanea-success
506
+ rounded-full
507
+ border-2 border-arcanea-cosmic-900
508
+ shadow-[0_0_10px_rgba(16,185,129,0.5)]
509
+ " />
510
+ </div>
511
+ ```
512
+
513
+ ### Academy Badge
514
+
515
+ ```tsx
516
+ // Dynamic Academy Badge
517
+ const academyStyles = {
518
+ atlantean: "from-atlantean-primary to-atlantean-secondary shadow-glow-atlantean",
519
+ draconic: "from-draconic-primary to-draconic-accent shadow-glow-draconic",
520
+ creation: "from-creation-primary to-creation-secondary shadow-glow-creation",
521
+ };
522
+
523
+ <div className={`
524
+ px-3 py-1
525
+ bg-gradient-to-r ${academyStyles[academy]}
526
+ rounded-full
527
+ text-xs font-medium
528
+ uppercase tracking-wide
529
+ `}>
530
+ {academyName}
531
+ </div>
532
+ ```
533
+
534
+ ## Accessibility Requirements
535
+
536
+ ### Color Contrast
537
+
538
+ All text must meet WCAG 2.1 AA standards:
539
+ - Normal text: 4.5:1 contrast ratio
540
+ - Large text (18px+): 3:1 contrast ratio
541
+ - UI components: 3:1 contrast ratio
542
+
543
+ ### Focus States
544
+
545
+ All interactive elements must have visible focus indicators:
546
+ ```css
547
+ .focus-visible:focus {
548
+ outline: none;
549
+ ring: 2px;
550
+ ring-color: var(--arcanea-primary-400);
551
+ ring-offset: 2px;
552
+ ring-offset-color: var(--arcanea-cosmic-900);
553
+ }
554
+ ```
555
+
556
+ ### Motion Preferences
557
+
558
+ Respect user's motion preferences:
559
+ ```css
560
+ @media (prefers-reduced-motion: reduce) {
561
+ *, *::before, *::after {
562
+ animation-duration: 0.01ms !important;
563
+ animation-iteration-count: 1 !important;
564
+ transition-duration: 0.01ms !important;
565
+ }
566
+ }
567
+ ```
568
+
569
+ ### Screen Reader Support
570
+
571
+ - All images have meaningful alt text
572
+ - Icon-only buttons have aria-labels
573
+ - Dynamic content uses aria-live regions
574
+ - Modal dialogs trap focus appropriately
575
+
576
+ ## Responsive Breakpoints
577
+
578
+ ```css
579
+ /* Mobile First */
580
+ --screen-sm: 640px; /* Small devices */
581
+ --screen-md: 768px; /* Tablets */
582
+ --screen-lg: 1024px; /* Laptops */
583
+ --screen-xl: 1280px; /* Desktops */
584
+ --screen-2xl: 1536px; /* Large screens */
585
+ ```
586
+
587
+ ## Component Library Reference
588
+
589
+ Using shadcn/ui components with Arcanean customization:
590
+ - Button, Card, Dialog, Dropdown
591
+ - Input, Textarea, Select
592
+ - Tabs, Accordion, Avatar
593
+ - Toast, Tooltip, Popover
594
+
595
+ All components override default themes with Arcanean tokens.
596
+
597
+ ## Integration Guidelines
598
+
599
+ ### When Building UI
600
+
601
+ 1. **Start with tokens** - Use design tokens, not raw values
602
+ 2. **Layer properly** - cosmic-900 → cosmic-800 → cosmic-700 for depth
603
+ 3. **Glow intentionally** - Use glows for interactive elements and focus
604
+ 4. **Animate purposefully** - Motion should guide attention
605
+ 5. **Academy-aware** - Adapt colors when in academy context
606
+
607
+ ### Quality Checklist
608
+
609
+ ```markdown
610
+ ## Design System Compliance
611
+
612
+ - [ ] Uses Arcanean color tokens
613
+ - [ ] Correct typography scale
614
+ - [ ] Proper spacing (4px grid)
615
+ - [ ] Glow effects for interactives
616
+ - [ ] Smooth animations (spring-based)
617
+ - [ ] Academy colors if applicable
618
+ - [ ] Accessible contrast ratios
619
+ - [ ] Focus states visible
620
+ - [ ] Motion preference respected
621
+ - [ ] Responsive across breakpoints
622
+ ```
623
+
624
+ ---
625
+
626
+ *This design system ensures every pixel of Arcanea feels magical, consistent, and welcoming. Build with care.*