1+ ---
2+ // src/components/MfaDiagram.astro
3+ ---
4+ <div class =" diagram-container" >
5+ <div class =" column" >
6+ <h3 >Before: Password-Only Access</h3 >
7+ <div class =" step" >
8+ <div class =" icon" ><i class =" lni lni-user" ></i ></div >
9+ <div class =" label" >User</div >
10+ </div >
11+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
12+ <div class =" step" >
13+ <div class =" icon" ><i class =" lni lni-lock-alt" ></i ></div >
14+ <div class =" label" >Password</div >
15+ </div >
16+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
17+ <div class =" step" >
18+ <div class =" icon icon-insecure" ><i class =" lni lni-warning" ></i ></div >
19+ <div class =" label" >Vulnerable Point</div >
20+ </div >
21+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
22+ <div class =" step" >
23+ <div class =" icon" ><i class =" lni lni-database" ></i ></div >
24+ <div class =" label" >Corporate Network</div >
25+ </div >
26+ </div >
27+ <div class =" column" >
28+ <h3 >After: MFA-Secured Access</h3 >
29+ <div class =" step" >
30+ <div class =" icon" ><i class =" lni lni-user" ></i ></div >
31+ <div class =" label" >User</div >
32+ </div >
33+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
34+ <div class =" step" >
35+ <div class =" icon" ><i class =" lni lni-lock-alt" ></i ></div >
36+ <div class =" label" >Password</div >
37+ </div >
38+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
39+ <div class =" step" >
40+ <div class =" icon" ><i class =" lni lni-mobile" ></i ></div >
41+ <div class =" label" >MFA (Biometric or One-Time Password verification)</div >
42+ </div >
43+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
44+ <div class =" step" >
45+ <div class =" icon icon-secure" ><i class =" lni lni-checkmark-circle" ></i ></div >
46+ <div class =" label" >Security Layer</div >
47+ </div >
48+ <div class =" arrow" ><i class =" lni lni-arrow-down" ></i ></div >
49+ <div class =" step" >
50+ <div class =" icon" ><i class =" lni lni-database" ></i ></div >
51+ <div class =" label" >Corporate Network</div >
52+ </div >
53+ </div >
54+ </div >
55+
56+ <style >
57+ /* Te style są automatycznie izolowane przez Astro! */
58+ .diagram-container {
59+ display: flex;
60+ gap: 2em;
61+ width: 100%;
62+ max-width: 800px;
63+ margin-top: 2rem;
64+ margin-bottom: 2rem;
65+ }
66+
67+ .column {
68+ flex: 1;
69+ display: flex;
70+ flex-direction: column;
71+ align-items: center;
72+ background-color: #ffffff;
73+ padding: 1.5em;
74+ border-radius: 12px;
75+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
76+ border: 1px solid #e0e0e0;
77+ }
78+
79+ .column h3 {
80+ margin-top: 0;
81+ margin-bottom: 1.5em;
82+ color: #333;
83+ text-align: center;
84+ }
85+
86+ .step {
87+ text-align: center;
88+ }
89+
90+ .icon {
91+ font-size: 3em;
92+ margin-bottom: 0.25em;
93+ }
94+
95+ .arrow {
96+ font-size: 1.5em;
97+ color: #adb5bd;
98+ margin: 0.5em 0;
99+ }
100+
101+ .label {
102+ font-size: 0.9em;
103+ color: #6c757d;
104+ margin-top: 0.25em;
105+ }
106+
107+ .icon-insecure {
108+ color: #e74c3c; /* Red */
109+ }
110+
111+ .icon-secure {
112+ color: #2ecc71; /* Green */
113+ }
114+
115+ /* Responsive design for smaller screens */
116+ @media (max-width: 768px) {
117+ .diagram-container {
118+ flex-direction: column;
119+ }
120+ }
121+ </style >
0 commit comments