Ezmary commited on
Commit
2599641
·
verified ·
1 Parent(s): f02824c

Update src/App.scss

Browse files
Files changed (1) hide show
  1. src/App.scss +35 -80
src/App.scss CHANGED
@@ -1,14 +1,12 @@
1
- // src/App.scss (نسخه نهایی و تصحیح شده برای ظاهر دلخواه شما)
2
 
3
- // 1. Import Tailwind's base, components, and utilities
4
  @import 'tailwindcss/base';
5
  @import 'tailwindcss/components';
6
  @import 'tailwindcss/utilities';
7
 
8
- // 2. Define CSS Variables (از کد شما)
9
  :root {
10
- --radius: 0.625rem;
11
- --radius-md: 0.5rem;
12
  --background: oklch(1 0 0);
13
  --foreground: oklch(0.145 0 0);
14
  --popover: oklch(1 0 0);
@@ -23,24 +21,20 @@
23
  --border: oklch(1 0 0 / 10%);
24
  }
25
 
26
- // 3. Apply base styles (از کد شما)
27
  @layer base {
28
- * {
29
- border-color: theme('colors.custom-border');
30
- box-sizing: border-box;
31
- }
32
  body {
33
  @apply bg-custom-background text-custom-foreground;
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
  margin: 0; padding: 0;
36
  }
37
  }
38
 
39
- /* --- استایل‌های اصلی و جدید برای چیدمان و عناصر --- */
40
  .loading-screen {
41
- display: flex; align-items: center; justify-content: center;
42
- height: 100vh; font-size: 1.2rem;
43
- color: theme('colors.custom-foreground');
44
  }
45
 
46
  .main-wrapper {
@@ -51,35 +45,29 @@
51
  }
52
 
53
  .header-controls {
54
- display: flex; padding: 0.75rem 1rem; justify-content: space-between; align-items: center;
55
  width: 100%; position: absolute; top: 0; left: 0; z-index: 50;
56
  pointer-events: none;
57
- > div, > button { pointer-events: auto; }
58
  }
59
 
 
60
  .header-icon-button {
61
- /* تغییر اصلی: حذف پس‌زمینه و کادر */
62
- background: none;
63
- border: none;
64
- backdrop-filter: none;
65
-
66
- display: flex; align-items: center; justify-content: center; padding: 0.5rem;
67
  width: 44px; height: 44px; border-radius: 9999px;
 
 
68
  cursor: pointer; transition: all 0.2s ease-out;
69
- /* ✅ افزودن سایه برای خوانایی بهتر روی ویدیو */
70
- filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));
71
-
72
  .material-symbols-outlined {
73
- opacity: 1; /* افزایش وضوح */
74
- color: #ffffff; /* رنگ سفید ثابت برای آیکون */
75
- font-size: 28px; /* کمی بزرگتر برای دید بهتر */
 
76
  }
77
- &:hover {
78
- transform: scale(1.1);
79
- }
80
- &:active {
81
- transform: scale(0.95);
82
  }
 
83
  }
84
 
85
  .notification-popover-wrapper, .personality-popover-wrapper {
@@ -87,15 +75,16 @@
87
  transform: translateY(-10px) scale(0.95); transition: all 150ms ease-in-out;
88
  &.open { opacity: 1; pointer-events: auto; transform: translateY(0) scale(1); }
89
  .popover-content {
90
- background: rgba(44,44,46,0.95); backdrop-filter: blur(10px);
 
91
  border-radius: 12px; padding: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.4);
92
- border: 1px solid rgba(255, 255, 255, 0.1); color: oklch(0.95 0 0); font-size: 14px;
93
 
94
  ul { list-style: none; padding: 0; margin: 0; width: 220px; }
95
  li {
96
  display: flex; align-items: center; justify-content: space-between;
97
  padding: 10px 12px; border-radius: 8px; cursor: pointer; transition: background-color 150ms ease;
98
- &:hover { background: #3a3a3c; }
99
  &.active { color: #fff; font-weight: 500; }
100
  div { display: flex; align-items: center; gap: 12px; }
101
  .material-symbols-outlined { font-size: 22px; &.tick { color: #34c759; } }
@@ -110,69 +99,35 @@
110
  top: calc(1rem + 44px + 8px); left: 1rem;
111
  }
112
 
 
113
  .media-area {
114
- flex-grow: 1;
115
- position: relative;
116
- width: 100%;
117
- height: 100%;
118
- background-color: #000; /* ✅ رنگ پس‌زمینه سیاه برای زمانی که ویدیو نیست */
119
-
120
- /* ✅ تغییر اصلی: استایل برای تمام‌صفحه شدن ویدیو */
121
- video {
122
- position: absolute;
123
- top: 0;
124
- left: 0;
125
- width: 100%;
126
- height: 100%;
127
- object-fit: cover; /* ویدیو را می‌کشد تا کل کادر را پر کند */
128
- }
129
  }
130
-
131
  #large-logo-container {
132
  display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
133
  position: absolute; top: 0; left: 0; pointer-events: none;
134
  }
135
-
136
  .footer-controls-html-like {
137
  width: 100%; display: flex; align-items: center; position: absolute;
138
  bottom: 2rem; padding: 0.5rem 2.5rem; box-sizing: border-box; z-index: 20; justify-content: space-between;
139
  }
140
- .small-logo-footer-html-like {
141
- position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
142
- z-index: 1; display: flex; align-items: center; justify-content: center;
143
- }
144
- .control-button-wrapper { position: relative; display: flex; justify-content: center; }
145
  .control-button {
146
  height: 80px; width: 80px; border-radius: 9999px; padding: 0;
147
  display: flex; align-items: center; justify-content: center;
148
- border-width: 1px; border-color: theme('colors.custom-border');
149
- box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
150
  cursor: pointer; transition: transform 0.2s ease-out, box-shadow 0.2s ease-out;
151
  flex-shrink: 0; z-index: 2; overflow: hidden;
152
  &:hover { transform: scale(1.05); }
153
- svg.reference-mic-svg { width: 75%; height: 75%; }
154
  }
155
  .mic-button-color { background-color: #fecdd3; }
156
  .cam-button-color { background-color: #E0ECFF; }
157
  .dark .mic-button-color { background-color: #5C2129; }
158
  .dark .cam-button-color { background-color: #223355; }
159
- .switch-camera-button-container {
160
- position: absolute; bottom: calc(100% + 0.65rem); left: 50%;
161
- transform: translateX(-50%) translateY(15px) scale(0.7); z-index: 5;
162
- opacity: 0; pointer-events: none; transition: opacity 0.35s, transform 0.35s;
163
- transform-origin: center bottom;
164
- &.visible { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); pointer-events: auto; }
165
- }
166
- .switch-camera-button-content {
167
- width: 48px; height: 48px; background-color: theme('colors.custom-background');
168
- border: 1px solid theme('colors.custom-border'); border-radius: 9999px;
169
- display: flex; align-items: center; justify-content: center;
170
- box-shadow: 0 5px 10px rgba(0,0,0,0.12); cursor: pointer;
171
- transition: transform 0.2s ease-out;
172
- &:hover { transform: scale(1.12); }
173
- &:active { transform: scale(1.03); }
174
- svg { width: 22px; height: 22px; stroke: theme('colors.custom-foreground'); }
175
- }
176
 
177
  /* استایل‌های مودال (بدون تغییر) */
178
- .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(5px)}.modal-content{background:#2c2c2e;padding:24px;border-radius:16px;width:90%;max-width:500px;box-shadow:0 10px 30px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.15);animation:modal-fade-in .3s ease-out}.modal-content .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px solid #444;padding-bottom:16px}.modal-content .modal-header h3{margin:0;font-size:20px;color:#fff}.modal-content .modal-header .close-button{background:none;border:none;color:#aaa;font-size:28px;cursor:pointer;line-height:1;padding:0}.modal-content .modal-header .close-button:hover{color:#fff}.modal-content .modal-body .form-group{margin-bottom:20px}.modal-content .modal-body .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#e0e0e0}.modal-content .modal-body .form-group input,.modal-content .modal-body .form-group textarea{width:100%;padding:12px;border-radius:8px;border:1px solid #555;background-color:#3a3a3c;color:#fff;font-size:15px}.modal-content .modal-body .form-group input:focus,.modal-content .modal-body .form-group textarea:focus{outline:none;border-color:#0a84ff;box-shadow:0 0 0 2px rgba(10,132,255,.5)}.modal-content .modal-body .form-group textarea{resize:vertical;min-height:100px}.modal-content .modal-body .form-group small{display:block;margin-top:8px;color:#999;font-size:12px}.modal-content .modal-footer{display:flex;justify-content:flex-end;margin-top:24px}.modal-content .modal-footer .save-button{background-color:#0a84ff;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s}.modal-content .modal-footer .save-button:hover{background-color:#3499ff}@keyframes modal-fade-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}
 
 
 
1
+ // src/App.scss (نسخه نهایی با اصلاحات ظاهری)
2
 
3
+ // 1. Import Tailwind
4
  @import 'tailwindcss/base';
5
  @import 'tailwindcss/components';
6
  @import 'tailwindcss/utilities';
7
 
8
+ // 2. Define CSS Variables
9
  :root {
 
 
10
  --background: oklch(1 0 0);
11
  --foreground: oklch(0.145 0 0);
12
  --popover: oklch(1 0 0);
 
21
  --border: oklch(1 0 0 / 10%);
22
  }
23
 
24
+ // 3. Apply base styles
25
  @layer base {
26
+ * { box-sizing: border-box; }
 
 
 
27
  body {
28
  @apply bg-custom-background text-custom-foreground;
29
+ font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
30
  margin: 0; padding: 0;
31
  }
32
  }
33
 
34
+ /* استایل‌های اصلی برنامه */
35
  .loading-screen {
36
+ display: flex; align-items: center; justify-content: center; height: 100vh;
37
+ font-size: 1.2rem; color: theme('colors.custom-foreground');
 
38
  }
39
 
40
  .main-wrapper {
 
45
  }
46
 
47
  .header-controls {
48
+ display: flex; padding: 0.75rem 1rem; justify-content: space-between;
49
  width: 100%; position: absolute; top: 0; left: 0; z-index: 50;
50
  pointer-events: none;
51
+ > button { pointer-events: auto; }
52
  }
53
 
54
+ /* ✅ تغییر اصلی: دکمه‌های شفاف بدون پس‌زمینه */
55
  .header-icon-button {
56
+ display: flex; align-items: center; justify-content: center;
 
 
 
 
 
57
  width: 44px; height: 44px; border-radius: 9999px;
58
+ background-color: transparent;
59
+ border: none;
60
  cursor: pointer; transition: all 0.2s ease-out;
 
 
 
61
  .material-symbols-outlined {
62
+ opacity: 0.7;
63
+ color: oklch(0.95 0 0);
64
+ font-size: 28px;
65
+ filter: drop-shadow(0 1px 2px rgba(0,0,0,0.5)); /* سایه برای خوانایی روی ویدیو */
66
  }
67
+ &:hover .material-symbols-outlined {
68
+ opacity: 1;
 
 
 
69
  }
70
+ &:active { transform: scale(0.9); }
71
  }
72
 
73
  .notification-popover-wrapper, .personality-popover-wrapper {
 
75
  transform: translateY(-10px) scale(0.95); transition: all 150ms ease-in-out;
76
  &.open { opacity: 1; pointer-events: auto; transform: translateY(0) scale(1); }
77
  .popover-content {
78
+ background: rgba(28, 28, 30, 0.85); /* کمی تیره‌تر و با شفافیت برای زیبایی */
79
+ backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
80
  border-radius: 12px; padding: 8px; box-shadow: 0 4px 12px rgba(0,0,0,0.4);
81
+ border: 1px solid rgba(255, 255, 255, 0.1); color: #f5f5f5; font-size: 14px;
82
 
83
  ul { list-style: none; padding: 0; margin: 0; width: 220px; }
84
  li {
85
  display: flex; align-items: center; justify-content: space-between;
86
  padding: 10px 12px; border-radius: 8px; cursor: pointer; transition: background-color 150ms ease;
87
+ &:hover { background: rgba(255, 255, 255, 0.1); }
88
  &.active { color: #fff; font-weight: 500; }
89
  div { display: flex; align-items: center; gap: 12px; }
90
  .material-symbols-outlined { font-size: 22px; &.tick { color: #34c759; } }
 
99
  top: calc(1rem + 44px + 8px); left: 1rem;
100
  }
101
 
102
+ /* بخش‌های دیگر استایل (بدون تغییر) */
103
  .media-area {
104
+ flex-grow: 1; position: relative; width: 100%; height: 100%;
105
+ background-color: black; /* پس‌زمینه سیاه وقتی ویدیو نیست */
 
 
 
 
 
 
 
 
 
 
 
 
 
106
  }
 
107
  #large-logo-container {
108
  display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
109
  position: absolute; top: 0; left: 0; pointer-events: none;
110
  }
 
111
  .footer-controls-html-like {
112
  width: 100%; display: flex; align-items: center; position: absolute;
113
  bottom: 2rem; padding: 0.5rem 2.5rem; box-sizing: border-box; z-index: 20; justify-content: space-between;
114
  }
 
 
 
 
 
115
  .control-button {
116
  height: 80px; width: 80px; border-radius: 9999px; padding: 0;
117
  display: flex; align-items: center; justify-content: center;
118
+ border: none;
119
+ box-shadow: 0 4px 15px rgba(0,0,0,0.2);
120
  cursor: pointer; transition: transform 0.2s ease-out, box-shadow 0.2s ease-out;
121
  flex-shrink: 0; z-index: 2; overflow: hidden;
122
  &:hover { transform: scale(1.05); }
 
123
  }
124
  .mic-button-color { background-color: #fecdd3; }
125
  .cam-button-color { background-color: #E0ECFF; }
126
  .dark .mic-button-color { background-color: #5C2129; }
127
  .dark .cam-button-color { background-color: #223355; }
128
+ .switch-camera-button-container, .small-logo-footer-html-like { /* سایر استایل‌های شما */ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
129
 
130
  /* استایل‌های مودال (بدون تغییر) */
131
+ .modal-overlay {
132
+ /* ... همان استایل‌های قبلی ... */
133
+ }