Write on the margins of the internet. Powered by the AT Protocol. margin.at
extension web atproto comments
at ui-refactor 340 lines 6.7 kB view raw
1.collection-feed-item { 2 display: flex; 3 flex-direction: column; 4 background: var(--bg-primary); 5 overflow: visible; 6} 7 8.collection-context-badge { 9 display: flex; 10 align-items: center; 11 justify-content: space-between; 12 gap: var(--spacing-sm); 13 padding: 10px 20px; 14 background: var(--bg-secondary); 15 border-bottom: 1px solid var(--border); 16 border-top-left-radius: var(--radius-lg); 17 border-top-right-radius: var(--radius-lg); 18} 19 20.collection-context-inner { 21 display: flex; 22 align-items: center; 23 gap: 8px; 24 font-size: 0.8rem; 25 color: var(--text-secondary); 26} 27 28.collection-context-avatar { 29 width: 20px; 30 height: 20px; 31 border-radius: var(--radius-full); 32 object-fit: cover; 33} 34 35.collection-context-text { 36 display: flex; 37 align-items: center; 38 gap: 4px; 39 flex-wrap: wrap; 40} 41 42.collection-context-author { 43 font-weight: 600; 44 color: var(--text-primary); 45 text-decoration: none; 46} 47 48.collection-context-author:hover { 49 text-decoration: underline; 50} 51 52.collection-context-link { 53 display: inline-flex; 54 align-items: center; 55 gap: 5px; 56 font-weight: 600; 57 color: var(--accent); 58 text-decoration: none; 59 background: var(--accent-subtle); 60 padding: 2px 8px; 61 border-radius: var(--radius-sm); 62} 63 64.collection-context-link:hover { 65 background: var(--accent); 66 color: var(--bg-primary); 67} 68 69.collections-list { 70 display: flex; 71 flex-direction: column; 72 gap: 12px; 73} 74 75.collections-list > * { 76 background: var(--bg-card); 77 border: 1px solid var(--border); 78 border-radius: var(--radius-lg); 79} 80 81.collection-row { 82 display: flex; 83 align-items: center; 84 transition: background 0.15s ease; 85} 86 87.collection-row:hover { 88 background: var(--bg-secondary); 89} 90 91.collection-row-content { 92 flex: 1; 93 display: flex; 94 align-items: center; 95 gap: var(--spacing-md); 96 padding: var(--spacing-md); 97 text-decoration: none; 98 min-width: 0; 99} 100 101.collection-row-icon { 102 width: 40px; 103 height: 40px; 104 min-width: 40px; 105 display: flex; 106 align-items: center; 107 justify-content: center; 108 background: var(--bg-tertiary); 109 color: var(--accent); 110 border-radius: var(--radius-md); 111 transition: all 0.15s ease; 112 font-size: 1.1rem; 113} 114 115.collection-row:hover .collection-row-icon { 116 background: var(--accent-subtle); 117} 118 119.collection-row-info { 120 flex: 1; 121 min-width: 0; 122 display: flex; 123 flex-direction: column; 124 gap: 2px; 125} 126 127.collection-row-name { 128 font-size: 0.9rem; 129 font-weight: 600; 130 color: var(--text-primary); 131 white-space: nowrap; 132 overflow: hidden; 133 text-overflow: ellipsis; 134} 135 136.collection-row-desc { 137 font-size: 0.8rem; 138 color: var(--text-secondary); 139 white-space: nowrap; 140 overflow: hidden; 141 text-overflow: ellipsis; 142} 143 144.collection-row-arrow { 145 color: var(--text-tertiary); 146 opacity: 0; 147 transition: opacity 0.15s; 148} 149 150.collection-row:hover .collection-row-arrow { 151 opacity: 1; 152} 153 154.collection-row-edit { 155 padding: 8px; 156 margin-right: var(--spacing-sm); 157 color: var(--text-tertiary); 158 background: transparent; 159 border-radius: var(--radius-sm); 160 transition: all 0.15s; 161 opacity: 0; 162 border: none; 163 cursor: pointer; 164} 165 166.collection-row:hover .collection-row-edit { 167 opacity: 1; 168} 169 170.collection-row-edit:hover { 171 background: var(--bg-tertiary); 172 color: var(--text-primary); 173} 174 175.collection-detail-header { 176 display: flex; 177 flex-direction: column; 178 gap: var(--spacing-md); 179 padding: var(--spacing-lg); 180 background: var(--bg-secondary); 181 border: 1px solid var(--border); 182 border-radius: var(--radius-lg); 183 margin-bottom: var(--spacing-lg); 184 position: relative; 185} 186 187.collection-detail-icon { 188 width: 56px; 189 height: 56px; 190 min-width: 56px; 191 display: flex; 192 align-items: center; 193 justify-content: center; 194 background: var(--bg-tertiary); 195 color: var(--accent); 196 border-radius: var(--radius-lg); 197 font-size: 1.5rem; 198} 199 200.collection-detail-info { 201 display: flex; 202 flex-direction: column; 203 gap: 6px; 204} 205 206.collection-detail-visibility { 207 display: inline-flex; 208 align-items: center; 209 gap: 4px; 210 font-size: 0.65rem; 211 font-weight: 600; 212 letter-spacing: 0.05em; 213 text-transform: uppercase; 214 color: var(--accent); 215 padding: 2px 8px; 216 background: var(--accent-subtle); 217 border-radius: var(--radius-full); 218 width: fit-content; 219} 220 221.collection-detail-title { 222 font-family: var(--font-display); 223 font-size: 1.5rem; 224 font-weight: 700; 225 color: var(--text-primary); 226 line-height: 1.2; 227 letter-spacing: -0.02em; 228} 229 230.collection-detail-desc { 231 color: var(--text-secondary); 232 font-size: 0.9rem; 233 line-height: 1.5; 234} 235 236.collection-detail-stats { 237 display: flex; 238 align-items: center; 239 gap: var(--spacing-md); 240 font-size: 0.8rem; 241 color: var(--text-tertiary); 242 margin-top: var(--spacing-xs); 243} 244 245.collection-detail-actions { 246 position: absolute; 247 top: var(--spacing-md); 248 right: var(--spacing-md); 249 display: flex; 250 gap: var(--spacing-xs); 251} 252 253.collection-detail-actions .annotation-action, 254.collection-detail-edit, 255.collection-detail-delete { 256 padding: 6px; 257 color: var(--text-tertiary); 258 background: var(--bg-tertiary); 259 border-radius: var(--radius-sm); 260 transition: all 0.15s; 261 border: none; 262 cursor: pointer; 263} 264 265.collection-detail-actions .annotation-action:hover, 266.collection-detail-edit:hover { 267 background: var(--bg-hover); 268 color: var(--text-primary); 269} 270 271.collection-detail-delete:hover { 272 background: rgba(255, 69, 58, 0.1); 273 color: var(--error); 274} 275 276.collection-list-item { 277 width: 100%; 278 text-align: left; 279 padding: 12px 14px; 280 border-radius: var(--radius-md); 281 background: var(--bg-secondary); 282 border: 1px solid var(--border); 283 color: var(--text-primary); 284 transition: all 0.15s; 285 display: flex; 286 align-items: center; 287 justify-content: space-between; 288 cursor: pointer; 289 margin-bottom: var(--spacing-sm); 290} 291 292.collection-list-item:hover { 293 background: var(--bg-hover); 294 border-color: var(--accent); 295} 296 297.collection-list-item:disabled { 298 opacity: 0.5; 299 cursor: not-allowed; 300} 301 302.collection-item-wrapper { 303 position: relative; 304} 305 306.collection-item-remove { 307 position: absolute; 308 left: -40px; 309 top: 20px; 310 width: 28px; 311 height: 28px; 312 display: flex; 313 align-items: center; 314 justify-content: center; 315 background: var(--bg-secondary); 316 border: 1px solid var(--border); 317 border-radius: var(--radius-sm); 318 color: var(--text-tertiary); 319 cursor: pointer; 320 transition: all 0.15s ease; 321 opacity: 0; 322} 323 324.collection-item-wrapper:hover .collection-item-remove { 325 opacity: 1; 326} 327 328.collection-item-remove:hover { 329 background: rgba(255, 69, 58, 0.1); 330 border-color: rgba(255, 69, 58, 0.3); 331 color: var(--error); 332} 333 334.collection-item-wrapper .card, 335.collection-feed-item .card { 336 background: transparent !important; 337 border: none !important; 338 box-shadow: none; 339 border-radius: 0; 340}