Skip to main content

max / makenotwork

3.3 KB · 196 lines History Blame Raw
1 /* LINK PREVIEWS */
2
3 .post-link-previews {
4 margin-top: 0.75rem;
5 display: flex;
6 flex-direction: column;
7 gap: 0.5rem;
8 }
9
10 .link-preview-card {
11 display: block;
12 padding: 0.5rem 0.75rem;
13 border: 1px solid var(--border);
14 background: var(--light-background);
15 text-decoration: none;
16 color: var(--detail);
17 transition: background 0.2s ease;
18 }
19
20 .link-preview-card:hover {
21 background: var(--surface-muted);
22 text-decoration: none;
23 }
24
25 .lp-title {
26 display: block;
27 font-family: "IBM Plex Mono", monospace;
28 font-size: 0.85rem;
29 font-weight: bold;
30 }
31
32 .lp-desc {
33 display: block;
34 font-size: 0.8rem;
35 color: var(--text-muted);
36 margin-top: 0.15rem;
37 }
38
39 .lp-url {
40 display: block;
41 font-size: 0.7rem;
42 font-family: "IBM Plex Mono", monospace;
43 color: var(--text-muted);
44 margin-top: 0.15rem;
45 }
46
47 /* SEARCH MODAL */
48
49 .search-toggle {
50 font-family: "IBM Plex Mono", monospace;
51 font-size: 0.85rem;
52 color: var(--text-muted);
53 background: none;
54 border: 1px solid var(--border);
55 padding: 0.25rem 0.75rem;
56 cursor: pointer;
57 transition: opacity 0.2s ease;
58 }
59
60 .search-toggle:hover {
61 opacity: 0.7;
62 }
63
64 .search-modal {
65 position: fixed;
66 top: 0;
67 left: 0;
68 right: 0;
69 bottom: 0;
70 z-index: 200;
71 display: flex;
72 justify-content: center;
73 padding-top: 10vh;
74 }
75
76 .search-modal[hidden] {
77 display: none;
78 }
79
80 .search-modal-backdrop {
81 position: fixed;
82 top: 0;
83 left: 0;
84 right: 0;
85 bottom: 0;
86 background: rgba(0, 0, 0, 0.3);
87 }
88
89 .search-modal-content {
90 position: relative;
91 width: 100%;
92 max-width: 600px;
93 max-height: 70vh;
94 display: flex;
95 flex-direction: column;
96 background: var(--light-background);
97 border: 1px solid var(--border);
98 box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
99 z-index: 1;
100 }
101
102 .search-input {
103 width: 100%;
104 padding: 0.75rem 1rem;
105 font-size: 1rem;
106 font-family: "IBM Plex Mono", monospace;
107 background: var(--background);
108 border: none;
109 border-bottom: 1px solid var(--border);
110 color: var(--detail);
111 outline: none;
112 }
113
114 .search-input:focus {
115 border-bottom-color: var(--highlight);
116 }
117
118 .search-results-container {
119 overflow-y: auto;
120 max-height: calc(70vh - 3rem);
121 }
122
123 .search-results {
124 list-style: none;
125 margin: 0;
126 padding: 0;
127 }
128
129 .search-result {
130 border-bottom: 1px solid var(--border);
131 }
132
133 .search-result:last-child {
134 border-bottom: none;
135 }
136
137 .search-result-link {
138 display: block;
139 padding: 0.6rem 1rem;
140 text-decoration: none;
141 color: var(--detail);
142 transition: background 0.1s ease;
143 }
144
145 .search-result-link:hover,
146 .search-result.search-active .search-result-link {
147 background: var(--surface-muted);
148 text-decoration: none;
149 }
150
151 .search-result-title {
152 display: block;
153 font-weight: bold;
154 font-size: 0.9rem;
155 }
156
157 .search-result-meta {
158 display: block;
159 font-family: "IBM Plex Mono", monospace;
160 font-size: 0.7rem;
161 color: var(--text-muted);
162 margin-top: 0.15rem;
163 }
164
165 .search-result-snippet {
166 display: block;
167 font-size: 0.8rem;
168 color: var(--text-muted);
169 margin-top: 0.15rem;
170 overflow: hidden;
171 text-overflow: ellipsis;
172 white-space: nowrap;
173 }
174
175 .search-empty {
176 padding: 1.5rem 1rem;
177 text-align: center;
178 color: var(--text-muted);
179 font-family: "IBM Plex Mono", monospace;
180 font-size: 0.85rem;
181 }
182
183 /* POST ENDORSEMENTS */
184
185 .endorsed {
186 color: var(--highlight);
187 font-weight: bold;
188 }
189
190 .endorsement-count {
191 color: var(--detail);
192 font-size: 0.85rem;
193 margin-left: 0.25rem;
194 }
195
196