A URL shortener service that uses ATProto to allow self hosting and ensuring the user owns their data
27
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 230 lines 3.8 kB view raw
1body { 2 font-family: Arial, Helvetica, sans-serif; 3 4 --border-color: #ddd; 5 --gray-100: #fafafa; 6 --gray-500: #666; 7 --gray-700: #333; 8 --primary-100: #d2e7ff; 9 --primary-200: #b1d3fa; 10 --primary-400: #2e8fff; 11 --primary-500: #0078ff; 12 --primary-600: #0066db; 13 --error-500: #f00; 14 --error-100: #fee; 15} 16 17/* 18 Josh's Custom CSS Reset 19 https://www.joshwcomeau.com/css/custom-css-reset/ 20*/ 21*, 22*::before, 23*::after { 24 box-sizing: border-box; 25} 26* { 27 margin: 0; 28} 29body { 30 line-height: 1.5; 31 -webkit-font-smoothing: antialiased; 32} 33img, 34picture, 35video, 36canvas, 37svg { 38 display: block; 39 max-width: 100%; 40} 41input, 42button, 43textarea, 44select { 45 font: inherit; 46} 47p, 48h1, 49h2, 50h3, 51h4, 52h5, 53h6 { 54 overflow-wrap: break-word; 55} 56#root, 57#__next { 58 isolation: isolate; 59} 60 61/* 62 Common components 63*/ 64button, 65.button { 66 display: inline-block; 67 border: 0; 68 background-color: var(--primary-500); 69 border-radius: 50px; 70 color: #fff; 71 padding: 2px 10px; 72 cursor: pointer; 73 text-decoration: none; 74} 75button:hover, 76.button:hover { 77 background: var(--primary-400); 78} 79 80/* 81 Custom components 82*/ 83.error { 84 background-color: var(--error-100); 85 color: var(--error-500); 86 text-align: center; 87 padding: 1rem; 88 display: none; 89} 90.error.visible { 91 display: block; 92} 93 94#header { 95 background-color: #fff; 96 text-align: center; 97 padding: 0.5rem 0 1.5rem; 98} 99 100#header h1 { 101 font-size: 5rem; 102} 103 104.container { 105 display: flex; 106 flex-direction: column; 107 gap: 4px; 108 margin: 0 auto; 109 max-width: 600px; 110 padding: 20px; 111} 112 113.card { 114 /* border: 1px solid var(--border-color); */ 115 border-radius: 6px; 116 padding: 10px 16px; 117 background-color: #fff; 118} 119.card > :first-child { 120 margin-top: 0; 121} 122.card > :last-child { 123 margin-bottom: 0; 124} 125 126.session-form { 127 display: flex; 128 flex-direction: row; 129 align-items: center; 130 justify-content: space-between; 131} 132 133.login-form { 134 display: flex; 135 flex-direction: row; 136 gap: 6px; 137 border: 1px solid var(--border-color); 138 border-radius: 6px; 139 padding: 10px 16px; 140 background-color: #fff; 141} 142 143.login-form input { 144 flex: 1; 145 border: 0; 146} 147 148.status-options { 149 display: flex; 150 flex-direction: row; 151 flex-wrap: wrap; 152 gap: 8px; 153 margin: 10px 0; 154} 155 156.status-option { 157 font-size: 2rem; 158 width: 3rem; 159 height: 3rem; 160 padding: 0; 161 background-color: #fff; 162 border: 1px solid var(--border-color); 163 border-radius: 3rem; 164 text-align: center; 165 box-shadow: 0 1px 4px #0001; 166 cursor: pointer; 167} 168 169.status-option:hover { 170 background-color: var(--primary-100); 171 box-shadow: 0 0 0 1px var(--primary-400); 172} 173 174.status-option.selected { 175 box-shadow: 0 0 0 1px var(--primary-500); 176 background-color: var(--primary-100); 177} 178 179.status-option.selected:hover { 180 background-color: var(--primary-200); 181} 182 183.status-line { 184 display: flex; 185 flex-direction: row; 186 align-items: center; 187 gap: 10px; 188 position: relative; 189 margin-top: 15px; 190} 191 192.status-line:not(.no-line)::before { 193 content: ""; 194 position: absolute; 195 width: 2px; 196 background-color: var(--border-color); 197 left: 1.45rem; 198 bottom: calc(100% + 2px); 199 height: 15px; 200} 201 202.status-line .status { 203 font-size: 2rem; 204 background-color: #fff; 205 width: 3rem; 206 height: 3rem; 207 border-radius: 1.5rem; 208 text-align: center; 209 border: 1px solid var(--border-color); 210} 211 212.status-line .desc { 213 color: var(--gray-500); 214} 215 216.status-line .author { 217 color: var(--gray-700); 218 font-weight: 600; 219 text-decoration: none; 220} 221 222.status-line .author:hover { 223 text-decoration: underline; 224} 225 226.signup-cta { 227 text-align: center; 228 text-wrap: balance; 229 margin-top: 1rem; 230}