File size: 3,784 Bytes
7ad6991
bc7e9cd
db9635c
7ad6991
db9635c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
bc7e9cd
db9635c
 
 
 
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
 
 
 
 
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
 
 
 
 
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
 
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
 
 
 
 
bc7e9cd
7ad6991
db9635c
 
 
bc7e9cd
 
db9635c
 
bc7e9cd
db9635c
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
 
 
 
bc7e9cd
 
db9635c
 
 
 
 
bc7e9cd
 
db9635c
 
 
bc7e9cd
 
db9635c
 
bc7e9cd
db9635c
bc7e9cd
db9635c
 
 
 
 
 
 
 
bc7e9cd
db9635c
bc7e9cd
 
db9635c
 
 
 
 
 
bc7e9cd
 
db9635c
 
bc7e9cd
 
db9635c
 
bc7e9cd
db9635c
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<script lang="ts">
  import { fade } from "svelte/transition";
</script>

<div class="warning-container" transition:fade={{ duration: 200 }}>
  <div class="model-warning">
    <div class="warning-badge">
      <span class="warning-icon">⚠️</span>
      <span class="warning-label">Model Limitations</span>
    </div>
    <p class="warning-text">
      This demo uses <a href="https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Instruct" target="_blank" rel="noopener">Qwen3-Next-80B-A3B-Instruct</a>.
      <br />
      For complex tasks, run locally with frontier code agents like Claude Code.
    </p>
    <a href="https://github.com/dylanebert/VibeGame" target="_blank" rel="noopener" class="warning-link">
      <span>Learn More</span>
      <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">
        <path d="M7 17L17 7M17 7H7M17 7V17" />
      </svg>
    </a>
  </div>
</div>

<style>
  .warning-container {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 2rem 1rem;
  }

  .model-warning {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem;
    background: rgba(255, 255, 255, 0.01);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 12px;
    max-width: 500px;
    animation: warning-fade-in 0.4s ease-out;
    position: relative;
  }

  .model-warning::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg,
      rgba(255, 165, 0, 0.02) 0%,
      rgba(255, 165, 0, 0.04) 100%);
    border-radius: 12px;
    pointer-events: none;
  }

  @keyframes warning-fade-in {
    from {
      opacity: 0;
      transform: translateY(10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .warning-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.75rem;
    background: rgba(255, 165, 0, 0.08);
    border: 1px solid rgba(255, 165, 0, 0.15);
    border-radius: 20px;
    z-index: 1;
  }

  .warning-icon {
    font-size: 0.875rem;
    line-height: 1;
  }

  .warning-label {
    font-size: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: rgba(255, 165, 0, 0.9);
    font-weight: 600;
    font-family: "Monaco", "Menlo", monospace;
  }

  .warning-text {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.5);
    font-family: "Monaco", "Menlo", monospace;
    text-align: center;
    z-index: 1;
  }

  .warning-text a {
    color: rgba(255, 165, 0, 0.85);
    text-decoration: none;
    transition: all 0.15s ease;
    border-bottom: 1px dotted rgba(255, 165, 0, 0.3);
  }

  .warning-text a:hover {
    color: rgba(255, 190, 0, 1);
    border-bottom-color: rgba(255, 190, 0, 0.5);
  }

  .warning-link {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.75rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    font-family: "Monaco", "Menlo", monospace;
    z-index: 1;
  }

  .warning-link:hover {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.9);
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  }

  .warning-link svg {
    transition: transform 0.2s ease;
  }

  .warning-link:hover svg {
    transform: translate(2px, -2px);
  }
</style>