stat2025 commited on
Commit
8f7eaec
·
verified ·
1 Parent(s): 18b362f

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +110 -93
style.css CHANGED
@@ -1,118 +1,135 @@
1
  :root{
2
- --primary:#4137A8; --primary2:#1CADE4;
3
- --success:#00B050; --success2:#42BA97;
4
- --info:#27CED7; --info2:#1CADE4;
5
- --danger:#F5554A; --danger2:#FF7A70;
6
 
7
- --gray1:#5C6E88; --violet:#7030A0;
8
- --bg:#F6F8FB; --card:#FFFFFF; --text:#1B2559; --muted:#667085; --border:#E5E7EB;
 
 
 
 
 
 
 
 
 
 
9
  }
10
- *{box-sizing:border-box}
11
- html,body{margin:0;height:100%}
 
12
  body{
13
- direction:rtl; text-align:center;
14
- font-family:'Cairo',system-ui,-apple-system,'Segoe UI',Tahoma,Arial,sans-serif;
15
- background:var(--bg); color:var(--text);
16
- }
17
- .container{max-width:1100px;margin:0 auto;padding:16px}
18
- .center{text-align:center}
19
-
20
- /* رأس */
21
- .hero{
22
- border:1px solid var(--border); border-radius:16px; padding:22px;
23
- background:linear-gradient(180deg,#fff,#fbfdff);
24
- box-shadow:0 8px 26px rgba(16,24,40,.06); margin:10px 0 18px;
25
- }
26
- .hero h1{margin:0 0 6px;font-size:clamp(22px,3vw,32px);color:var(--primary);font-weight:700}
27
- .sub{margin:0;color:var(--gray1)}
28
- .sub .name, .footer .name { color: var(--violet); font-weight: 700; }
29
- .sub .role, .footer .role { color: var(--gray1); font-weight: 700; }
30
- .sep { margin: 0 .35rem; color: var(--gray1); }
31
-
32
- /* بطاقة */
33
  .card{
34
- background:var(--card); border:1px solid var(--border); border-radius:14px;
35
- padding:18px; box-shadow:0 6px 18px rgba(16,24,40,.05);
 
 
 
 
36
  }
37
- .label{font-weight:700;display:block;margin-bottom:6px}
 
38
  .paste{
39
- width:100%; min-height:clamp(160px,40vh,420px); line-height:1.8;
40
- border:1px solid var(--border); border-radius:12px; padding:12px;
41
- text-align:right; resize:vertical;
 
 
 
 
 
 
42
  }
43
- .filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:10px}
44
  .control{
45
- border:1px solid var(--border); border-radius:10px; padding:10px 12px;
46
- min-width:180px; outline:none; background:#fff;
47
  }
48
- .control::placeholder{ color:#98A2B3; }
49
- .hint{color:var(--muted); font-size:13px; margin:8px 0 12px}
50
 
51
- /* أزرار */
52
- .btn-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:6px 0 10px}
 
 
53
  .btn{
54
- border:none;border-radius:12px;padding:12px 18px;font-weight:700;cursor:pointer;position:relative
 
55
  }
56
- .btn[disabled]{opacity:.55; cursor:not-allowed}
 
57
 
58
- /* Gradients */
59
- .btn-primary{ color:#fff; background:linear-gradient(90deg,var(--primary),var(--primary2)); box-shadow:0 8px 18px rgba(65,55,168,.18) }
60
- .btn-success{ color:#fff; background:linear-gradient(90deg,var(--success),var(--success2)); box-shadow:0 8px 18px rgba(0,176,80,.18) }
61
- .btn-info{ color:#fff; background:linear-gradient(90deg,var(--info),var(--info2)); box-shadow:0 8px 18px rgba(39,206,215,.18) }
62
- .btn-danger{ color:#fff; background:linear-gradient(90deg,var(--danger),var(--danger2)); box-shadow:0 8px 18px rgba(245,85,74,.18) }
63
- .btn-light{ background:#fff;color:var(--text);border:1px dashed var(--border) }
64
 
65
- /* أرقام الخطوات */
66
- #btn-parse::before,#btn-export::before,#btn-clear::before{
67
- content:attr(data-step); position:absolute; top:-8px; inset-inline-start:-8px;
68
- background:rgba(0,0,0,.2); color:#fff; width:22px; height:22px; border-radius:50%;
69
- display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700;
70
- box-shadow:0 2px 8px rgba(0,0,0,.15);
 
 
 
71
  }
72
 
73
- /* شارة العدّاد داخل زر التحليل */
74
- .btn .badge{
75
- margin-inline-start:.5rem; padding:2px 8px; border-radius:999px; font-size:12px;
76
- background:rgba(255,255,255,.22); color:#fff; border:1px solid rgba(255,255,255,.35);
 
 
77
  }
78
- .badge-right{ position:relative; top:-1px; }
79
 
80
- /* الجدول */
81
- .table-wrap{overflow:auto; border:1px solid var(--border); border-radius:12px}
82
- .table{border-collapse:collapse; width:100%}
 
 
 
83
  .table thead th{
84
- background:var(--primary); color:#fff; position:sticky; top:0; z-index:1;
85
- padding:10px; border-bottom:1px solid var(--border); text-align:center
 
 
86
  }
87
- .table td{padding:10px; border-top:1px solid var(--border); text-align:center}
88
- .table td[contenteditable="true"]{background:#fffaf2}
89
- .table tr:nth-child(even) td{background:#fafcff}
90
- .table tr:hover td{background:#f4f7ff}
91
 
92
- /* إبراز الخلايا غير الصحيحة */
93
- .table td.invalid{ background:#fff5f5; outline:1px solid #f6b2b2; }
 
 
 
94
 
95
- /* Toast */
96
  .toast{
97
- position:fixed; inset-inline:0; bottom:20px; margin:auto;
98
- max-width:420px; padding:12px 16px; border-radius:12px; color:#053b2c;
99
- background:#e9fbf4; border:1px solid #bdf0df; box-shadow:0 8px 24px rgba(16,24,40,.12);
100
- font-weight:600; display:none;
101
- }
102
- .toast.show{display:block; animation:fade 2s ease both}
103
- @keyframes fade{0%{opacity:0; transform:translateY(10px)}10%,90%{opacity:1; transform:translateY(0)}100%{opacity:0; transform:translateY(10px)}}
104
-
105
- /* موبايل */
106
- @media (max-width:768px){
107
- .container{padding:12px}
108
- .paste{min-height:clamp(140px,34vh,360px)}
109
- }
110
-
111
- /* طباعة: الجدول فقط */
112
- @media print{
113
- body{ background:#fff; }
114
- .hero, .btn-row, .hint, .footer, .paste, .label, .filters{ display:none !important; }
115
- .table-wrap{ border:none; }
116
- .table thead th{ background:#222 !important; color:#fff !important; }
117
- .table td{ background:#fff !important; }
118
  }
 
1
  :root{
2
+ --bg:#F4F6FA;
3
+ --card:#FFFFFF;
4
+ --text:#1F2937;
5
+ --muted:#6B7280;
6
 
7
+ /* لوحة الألوان */
8
+ --primary:#4137A8; /* أساسي */
9
+ --accent:#1CADE4; /* أزرار ثانوية */
10
+ --success:#42BA97; /* نجاح */
11
+ --green:#00B050; /* أخضر إضافي */
12
+ --secondary:#5C6E88; /* ثانوي */
13
+ --violet:#7030A0; /* بنفسجي ثانوي */
14
+ --cyan:#27CED7; /* سماوي */
15
+ --warning:#FFC000; /* أصفر */
16
+ --danger:#F5554A; /* أحمر */
17
+ --border:#E5E7EB;
18
+ --rowAlt:#F5F8FF;
19
  }
20
+
21
+ *{ box-sizing:border-box }
22
+ html,body{ height:100% }
23
  body{
24
+ margin:0; padding:24px;
25
+ background:var(--bg);
26
+ color:var(--text);
27
+ font-family:"Cairo",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
28
+ }
29
+
30
+ .container{
31
+ max-width:1100px;
32
+ margin:0 auto;
33
+ }
34
+
35
+ .center{ text-align:center }
36
+ .hero h1{
37
+ margin:0 0 4px 0; font-weight:800; font-size:clamp(22px,4vw,34px); color:var(--primary);
38
+ }
39
+ .hero .sub{ margin:0; color:var(--muted); font-size:14px }
40
+ .hero .sep{ margin:0 .5rem }
41
+
 
 
42
  .card{
43
+ margin:18px auto 28px;
44
+ background:var(--card);
45
+ border:1px solid var(--border);
46
+ border-radius:16px;
47
+ box-shadow:0 6px 24px rgba(0,0,0,.05);
48
+ padding:18px;
49
  }
50
+
51
+ .label{ display:block; text-align:right; font-weight:700; margin:4px 4px 8px }
52
  .paste{
53
+ width:100%; min-height:180px; resize:vertical;
54
+ border:1px solid var(--border); border-radius:12px;
55
+ padding:12px 14px; line-height:1.7; font-size:15px;
56
+ background:#fff;
57
+ }
58
+ .paste:focus{ outline:2px solid var(--accent) }
59
+
60
+ .filters{
61
+ display:flex; gap:12px; margin-top:12px; flex-wrap:wrap; justify-content:center;
62
  }
 
63
  .control{
64
+ border:1px solid var(--border); border-radius:10px; padding:10px 12px; background:#fff;
65
+ min-width:260px; font-size:14px;
66
  }
67
+ .hint{ margin:12px 0 8px; color:var(--muted); font-size:13px }
 
68
 
69
+ .btn-row{
70
+ display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:center;
71
+ margin:8px 0 16px;
72
+ }
73
  .btn{
74
+ border:0; border-radius:999px; padding:10px 14px; font-weight:700; cursor:pointer;
75
+ box-shadow:0 4px 12px rgba(0,0,0,.08); transition:transform .05s ease;
76
  }
77
+ .btn:active{ transform:translateY(1px) }
78
+ .btn[disabled]{ opacity:.5; cursor:not-allowed; box-shadow:none }
79
 
80
+ .btn-primary{ background:var(--primary); color:#fff }
81
+ .btn-success{ background:var(--success); color:#fff }
82
+ .btn-info{ background:var(--accent); color:#fff }
83
+ .btn-danger{ background:var(--danger); color:#fff }
84
+ .btn-light{ background:#EEF2FF; color:var(--primary) }
 
85
 
86
+ .btn[data-step]{
87
+ position:relative; padding-inline-start:36px;
88
+ }
89
+ .btn[data-step]::before{
90
+ content:attr(data-step);
91
+ position:absolute; inset-inline-start:10px; top:50%; transform:translateY(-50%);
92
+ width:20px; height:20px; border-radius:999px;
93
+ background:#fff; color:var(--primary); font-weight:800; font-size:12px;
94
+ display:grid; place-items:center;
95
  }
96
 
97
+ .badge{
98
+ display:inline-flex; align-items:center; justify-content:center;
99
+ min-width:22px; height:22px; padding:0 6px;
100
+ background:#fff; color:var(--primary); border-radius:999px; font-weight:800; font-size:12px;
101
+ margin-inline-start:8px;
102
+ box-shadow: inset 0 0 0 2px rgba(255,255,255,.7);
103
  }
104
+ .badge-right{}
105
 
106
+ .table-wrap{
107
+ overflow:auto; border:1px solid var(--border); border-radius:12px;
108
+ }
109
+ .table{
110
+ width:100%; border-collapse:collapse; min-width:900px;
111
+ }
112
  .table thead th{
113
+ background:var(--primary); color:#fff; padding:10px; font-weight:800; position:sticky; top:0;
114
+ }
115
+ .table td{
116
+ padding:10px; border:1px solid var(--border); text-align:center; background:#fff;
117
  }
118
+ .table tbody tr:nth-child(even) td{ background:var(--rowAlt) }
 
 
 
119
 
120
+ .invalid{ background:#FFF2F2 !important; outline:2px solid var(--danger) }
121
+
122
+ .footer{
123
+ margin:18px 0; text-align:center; color:var(--muted); font-size:13px;
124
+ }
125
 
 
126
  .toast{
127
+ position:fixed; left:50%; transform:translateX(-50%); bottom:22px;
128
+ background:#111827; color:#fff; padding:10px 14px; border-radius:10px; font-weight:700; opacity:0;
129
+ }
130
+ .toast.show{ opacity:1; transition:opacity .2s ease }
131
+
132
+ @media (max-width:640px){
133
+ body{ padding:16px }
134
+ .table{ min-width:760px }
 
 
 
 
 
 
 
 
 
 
 
 
 
135
  }