File size: 3,317 Bytes
75118bc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
/* ============================================================
   ARTICLE HOVER PREVIEW CARD
   ============================================================ */

#apc-card {
  position:      fixed;
  z-index:       99999;
  width:         360px;
  display:       none;
  flex-direction: column;
  background:    linear-gradient(140deg, #070d2a 0%, #0a1530 100%);
  border:        1px solid rgba(0, 240, 255, 0.22);
  border-radius: 14px;
  box-shadow:    0 0 0 1px rgba(0,240,255,0.06),
                 0 8px 32px rgba(0, 0, 0, 0.55),
                 0 0 40px rgba(0, 240, 255, 0.06);
  overflow:      hidden;
  pointer-events: none;
  opacity:       0;
  transform:     translateY(10px) scale(0.97);
  transition:    opacity 0.2s ease, transform 0.2s ease;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

#apc-card.apc-visible {
  opacity:   1;
  transform: translateY(0) scale(1);
}

/* ── Image area ── */
.apc-img-wrap {
  position:   relative;
  width:       100%;
  height:      170px;
  overflow:    hidden;
  background:  rgba(0, 240, 255, 0.03);
  flex-shrink: 0;
}

#apc-img {
  width:      100%;
  height:     100%;
  object-fit: cover;
  display:    none;
  transition: opacity 0.3s ease;
}

.apc-img-placeholder {
  position:       absolute;
  inset:          0;
  display:        flex;
  align-items:    center;
  justify-content: center;
  font-size:      40px;
  color:          rgba(0, 240, 255, 0.12);
  background: linear-gradient(135deg, rgba(0,240,255,0.03), rgba(139,233,255,0.06));
}

/* Shimmer on loading */
#apc-card.apc-loading .apc-img-wrap::after {
  content:   '';
  position:  absolute;
  inset:     0;
  background: linear-gradient(90deg, transparent 0%, rgba(0,240,255,0.07) 50%, transparent 100%);
  background-size: 200% 100%;
  animation: apcShimmer 1.2s infinite;
}

@keyframes apcShimmer {
  0%   { background-position: -200% 0; }
  100% { background-position:  200% 0; }
}

/* ── Text body ── */
.apc-body {
  padding:        14px 16px 12px;
  display:        flex;
  flex-direction: column;
  gap:            5px;
}

.apc-site {
  font-size:      10px;
  letter-spacing: 1.8px;
  text-transform: uppercase;
  color:          #00f0ff;
  font-weight:    700;
  font-family:    'Inter', sans-serif;
}

.apc-title {
  font-size:   13.5px;
  font-weight: 600;
  color:       #eaf6ff;
  line-height: 1.45;
  display:     -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow:    hidden;
  max-height:  60px;
  font-family: 'Inter', sans-serif;
}

#apc-card.apc-loading .apc-title {
  color: rgba(184, 223, 240, 0.35);
}

.apc-desc {
  font-size:   11.5px;
  color:       #8be9ff;
  line-height: 1.5;
  display:     -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:    hidden;
  opacity:     0.85;
  font-family: 'Inter', sans-serif;
}

/* ── Footer ── */
.apc-footer {
  display:         flex;
  align-items:     center;
  justify-content: space-between;
  margin-top:      6px;
  padding-top:     8px;
  border-top:      1px solid rgba(0, 240, 255, 0.1);
}

.apc-hint {
  font-size:   10px;
  color:       rgba(184, 223, 240, 0.45);
  font-style:  italic;
  font-family: 'Inter', sans-serif;
}

.apc-ext-icon {
  font-size: 11px;
  color:     #00f0ff;
  opacity:   0.7;
}