Ezmary commited on
Commit
3d15a54
·
verified ·
1 Parent(s): 59b7349

Update src/App.scss

Browse files
Files changed (1) hide show
  1. src/App.scss +36 -43
src/App.scss CHANGED
@@ -1,5 +1,3 @@
1
- // src/App.scss
2
-
3
  // 1. Import Tailwind's base, components, and utilities
4
  @import 'tailwindcss/base';
5
  @import 'tailwindcss/components';
@@ -32,7 +30,7 @@
32
  }
33
  body {
34
  @apply bg-background text-foreground;
35
- overflow-x: hidden;
36
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
37
  -webkit-font-smoothing: antialiased;
38
  -moz-osx-font-smoothing: grayscale;
@@ -48,8 +46,8 @@
48
  left: 50%;
49
  transform: translateX(-50%);
50
  z-index: 100;
51
- width: calc(100% - 2rem);
52
- max-width: 28rem;
53
  display: flex;
54
  justify-content: center;
55
  pointer-events: none;
@@ -65,12 +63,12 @@
65
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
66
  outline: none;
67
  transition: opacity 0.3s ease-out, transform 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
68
- opacity: 0; // <--- Corrected: no quotes
69
  transform: translateY(-100%) scale(0.9);
70
  pointer-events: none;
71
 
72
  &.open {
73
- opacity: 1; // <--- Corrected: no quotes
74
  transform: translateY(0) scale(1);
75
  pointer-events: auto;
76
  }
@@ -93,14 +91,14 @@
93
  /* Header controls */
94
  .header-controls {
95
  display: flex;
96
- padding: 1rem;
97
  justify-content: space-between;
98
  align-items: center;
99
  width: 100%;
100
  position: absolute;
101
  top: 0;
102
  left: 0;
103
- z-index: 10;
104
  }
105
 
106
  .header-button {
@@ -108,18 +106,18 @@
108
  align-items: center;
109
  justify-content: center;
110
  padding: 0.5rem;
111
- border-radius: var(--radius-lg, 0.625rem);
112
- background-color: #e5e7eb;
113
  cursor: pointer;
114
  transition: background-color 0.2s;
115
 
116
  &:hover {
117
- background-color: #d1d5db;
118
  }
119
 
120
  svg {
121
- opacity: 0.7; // <--- Corrected: no quotes
122
- stroke: #374151;
123
  }
124
  }
125
 
@@ -129,7 +127,7 @@
129
  background-color: oklch(0.35 0 0);
130
  }
131
  svg {
132
- opacity: 0.8; // <--- Corrected: no quotes
133
  stroke: oklch(0.85 0 0);
134
  }
135
  }
@@ -138,24 +136,25 @@
138
  .footer-controls {
139
  width: 100%;
140
  display: flex;
141
- gap: 1rem;
142
  position: absolute;
143
  bottom: 0;
144
- padding: 2rem 3rem;
 
145
  align-items: center;
146
 
147
  &.layout-default {
148
- justify-content: space-between;
149
  }
150
  &.layout-with-small-logo {
151
- justify-content: space-around;
152
  }
153
  }
154
 
155
  .control-button {
156
- height: 80px;
157
  width: 80px;
158
- border-radius: 9999px;
159
  padding: 0;
160
  display: flex;
161
  align-items: center;
@@ -172,26 +171,26 @@
172
  }
173
  }
174
 
175
- .cam-button-color { background-color: #E0ECFF; }
176
- .mic-button-color { background-color: #fecdd3; }
177
 
178
- .dark .cam-button-color { background-color: #223355; }
179
- .dark .mic-button-color { background-color: #5C2129; }
180
 
181
  /* Switch Camera Button */
182
  .switch-camera-button-container {
183
  position: absolute;
184
- bottom: calc(100% + 0.65rem);
185
  left: 50%;
186
- z-index: 5;
187
- opacity: 0; // <--- Corrected: no quotes
188
  transform: translateY(15px) scale(0.7) translateX(-50%);
189
  pointer-events: none;
190
  transition: opacity 0.35s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform 0.35s cubic-bezier(0.68, -0.55, 0.27, 1.55);
191
  transform-origin: center bottom;
192
 
193
  &.visible {
194
- opacity: 1; // <--- Corrected: no quotes
195
  transform: translateY(0) scale(1) translateX(-50%);
196
  pointer-events: auto;
197
  }
@@ -202,7 +201,7 @@
202
  height: 48px;
203
  background-color: var(--background);
204
  border: 1px solid var(--border);
205
- border-radius: 9999px;
206
  display: flex;
207
  align-items: center;
208
  justify-content: center;
@@ -220,7 +219,7 @@
220
  }
221
 
222
  svg {
223
- width: 22px;
224
  height: 22px;
225
  stroke: var(--foreground);
226
  transition: transform 0.3s ease-in-out;
@@ -231,28 +230,27 @@
231
  }
232
 
233
  /* Keyframes for popover */
234
- // Corrected: percentages and opacity values are not quoted
235
  @keyframes popover-drop-in {
236
- 0% { // <--- Corrected
237
  opacity: 0;
238
  transform: translateY(-100%) scale(0.9);
239
  }
240
- 70% { // <--- Corrected
241
  opacity: 1;
242
  transform: translateY(5px) scale(1.02); /* Slight overshoot */
243
  }
244
- 100% { // <--- Corrected
245
  opacity: 1;
246
  transform: translateY(0) scale(1);
247
  }
248
  }
249
 
250
  @keyframes popover-lift-out {
251
- 0% { // <--- Corrected
252
  opacity: 1;
253
  transform: translateY(0) scale(1);
254
  }
255
- 100% { // <--- Corrected
256
  opacity: 0;
257
  transform: translateY(-100%) scale(0.9);
258
  }
@@ -264,9 +262,4 @@
264
  }
265
  .animate-popover-close-top-center {
266
  animation: popover-lift-out 0.3s ease-in forwards;
267
- }
268
-
269
- // Utility overrides are generally not needed if Tailwind is configured correctly.
270
- // These were previously commented out and can remain so.
271
- // .bg-blue-200 { background-color: #bfdbfe !important; }
272
- // ...
 
 
 
1
  // 1. Import Tailwind's base, components, and utilities
2
  @import 'tailwindcss/base';
3
  @import 'tailwindcss/components';
 
30
  }
31
  body {
32
  @apply bg-background text-foreground;
33
+ overflow-x: hidden; // Ensures no horizontal scroll on body
34
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
35
  -webkit-font-smoothing: antialiased;
36
  -moz-osx-font-smoothing: grayscale;
 
46
  left: 50%;
47
  transform: translateX(-50%);
48
  z-index: 100;
49
+ width: calc(100% - 2rem); // Takes full width minus some margin
50
+ max-width: 28rem; // Max width for larger screens
51
  display: flex;
52
  justify-content: center;
53
  pointer-events: none;
 
63
  box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
64
  outline: none;
65
  transition: opacity 0.3s ease-out, transform 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
66
+ opacity: 0;
67
  transform: translateY(-100%) scale(0.9);
68
  pointer-events: none;
69
 
70
  &.open {
71
+ opacity: 1;
72
  transform: translateY(0) scale(1);
73
  pointer-events: auto;
74
  }
 
91
  /* Header controls */
92
  .header-controls {
93
  display: flex;
94
+ padding: 1rem; // Sufficient padding for touch targets
95
  justify-content: space-between;
96
  align-items: center;
97
  width: 100%;
98
  position: absolute;
99
  top: 0;
100
  left: 0;
101
+ z-index: 10; // Above media content
102
  }
103
 
104
  .header-button {
 
106
  align-items: center;
107
  justify-content: center;
108
  padding: 0.5rem;
109
+ border-radius: var(--radius-lg, 0.625rem); // Corrected from var(--radius-lg, 0.625rem)
110
+ background-color: #e5e7eb; // Tailwind gray-200
111
  cursor: pointer;
112
  transition: background-color 0.2s;
113
 
114
  &:hover {
115
+ background-color: #d1d5db; // Tailwind gray-300
116
  }
117
 
118
  svg {
119
+ opacity: 0.7;
120
+ stroke: #374151; // Tailwind gray-700
121
  }
122
  }
123
 
 
127
  background-color: oklch(0.35 0 0);
128
  }
129
  svg {
130
+ opacity: 0.8;
131
  stroke: oklch(0.85 0 0);
132
  }
133
  }
 
136
  .footer-controls {
137
  width: 100%;
138
  display: flex;
139
+ gap: 1rem; // Space between control items
140
  position: absolute;
141
  bottom: 0;
142
+ // *** MODIFIED: Reduced padding for better mobile fit ***
143
+ padding: 1.5rem 1rem; // 24px top/bottom, 16px left/right
144
  align-items: center;
145
 
146
  &.layout-default {
147
+ justify-content: space-between; // For mic and cam buttons
148
  }
149
  &.layout-with-small-logo {
150
+ justify-content: space-around; // For mic, logo, and cam buttons
151
  }
152
  }
153
 
154
  .control-button {
155
+ height: 80px; // Keeping original size, should fit with new padding
156
  width: 80px;
157
+ border-radius: 9999px; // Circular
158
  padding: 0;
159
  display: flex;
160
  align-items: center;
 
171
  }
172
  }
173
 
174
+ .cam-button-color { background-color: #E0ECFF; } // Light blueish
175
+ .mic-button-color { background-color: #fecdd3; } // Light redish
176
 
177
+ .dark .cam-button-color { background-color: #223355; } // Dark blueish
178
+ .dark .mic-button-color { background-color: #5C2129; } // Dark redish
179
 
180
  /* Switch Camera Button */
181
  .switch-camera-button-container {
182
  position: absolute;
183
+ bottom: calc(100% + 0.65rem); // Positioned above the camera button
184
  left: 50%;
185
+ z-index: 5; // Below header controls but above other footer elements if overlap
186
+ opacity: 0;
187
  transform: translateY(15px) scale(0.7) translateX(-50%);
188
  pointer-events: none;
189
  transition: opacity 0.35s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform 0.35s cubic-bezier(0.68, -0.55, 0.27, 1.55);
190
  transform-origin: center bottom;
191
 
192
  &.visible {
193
+ opacity: 1;
194
  transform: translateY(0) scale(1) translateX(-50%);
195
  pointer-events: auto;
196
  }
 
201
  height: 48px;
202
  background-color: var(--background);
203
  border: 1px solid var(--border);
204
+ border-radius: 9999px; // Circular
205
  display: flex;
206
  align-items: center;
207
  justify-content: center;
 
219
  }
220
 
221
  svg {
222
+ width: 22px; // SVG size is fixed here
223
  height: 22px;
224
  stroke: var(--foreground);
225
  transition: transform 0.3s ease-in-out;
 
230
  }
231
 
232
  /* Keyframes for popover */
 
233
  @keyframes popover-drop-in {
234
+ 0% {
235
  opacity: 0;
236
  transform: translateY(-100%) scale(0.9);
237
  }
238
+ 70% {
239
  opacity: 1;
240
  transform: translateY(5px) scale(1.02); /* Slight overshoot */
241
  }
242
+ 100% {
243
  opacity: 1;
244
  transform: translateY(0) scale(1);
245
  }
246
  }
247
 
248
  @keyframes popover-lift-out {
249
+ 0% {
250
  opacity: 1;
251
  transform: translateY(0) scale(1);
252
  }
253
+ 100% {
254
  opacity: 0;
255
  transform: translateY(-100%) scale(0.9);
256
  }
 
262
  }
263
  .animate-popover-close-top-center {
264
  animation: popover-lift-out 0.3s ease-in forwards;
265
+ }