colorful rat Ratfactor.com > Dave's Repos

famsite

A super tiny social site for families
git clone http://ratfactor.com/repos/famsite/famsite.git

famsite/styles.css

Download raw file: styles.css

1 /* Famsite CSS */ 2 3 /* Optional Emoji font to support clients without good system Emoji font 4 * support. You can remove this to shave 300Kb from the total payload of 5 * Famsite. 6 *********************************************************************** 7 */ 8 @font-face { 9 font-family: 'Twemoji'; 10 src: url("twemoji-subset.woff2") format("woff2"); 11 } 12 .postbox textarea, .post .txt, #fc_popup, .emoji, .control-row 13 { font-family: "Twemoji", serif !important; } 14 span.picked-emoji { font-family: "Twemoji"; } 15 /* 16 * End of optional Emoji font declarations. 17 *********************************************************************** 18 */ 19 20 html { margin: 0; padding: 0; height: 100%; } 21 body { 22 margin: 0; padding: 0; 23 font-size: 1.2em; 24 background: #fefeee; 25 color: #222; 26 } 27 a, a:visited { color: #538; } 28 29 header { 30 background: #679; 31 padding: 5px; 32 color: #FFF; 33 display: flex; 34 align-items: center; 35 gap: 20px; 36 } 37 header a, header a:visited { 38 color: #ffd045; 39 background: #444e64; 40 padding: 3px; 41 text-decoration: none; 42 } 43 header a:hover { filter: drop-shadow(3px 3px #000); } 44 header a:active { filter: drop-shadow(-1px -1px #000); } 45 header .avatar-container { display: flex; align-items: center; } 46 header .avatar { width: 30px; height: 30px; margin-right: 5px; } 47 48 .avatar { 49 width: 46px; height: 46px; 50 border: 2px solid #ffd87c; border-radius: 10px; 51 } 52 53 #timeline { 54 max-width: 770px; 55 margin: auto; 56 } 57 58 /* Post Box (Submit new post) */ 59 .postbox { 60 max-width: 650px; 61 margin: 35px; 62 } 63 input[name='image'] { display: none; } 64 .control-row { 65 width: 100%; 66 padding: 15px; 67 display: flex; 68 justify-content: space-between; 69 align-items: center; 70 } 71 .postbox textarea { 72 border: 2px solid #86B; border-radius: 15px; 73 background: #FEC; 74 width: 100%; height: 120px; 75 font-family: "Twemoji", serif; 76 font-size: 1em; 77 padding: 15px; 78 } 79 #image-preview img { 80 max-width: 200px; 81 max-height: 200px; 82 margin: 10px; 83 } 84 .postbox a:hover { 85 background: #e7d8ff; 86 color: #9700ff; 87 } 88 .postbox button { 89 font-size: 1.1em; 90 background: #86B; 91 color: #FFF; 92 border: 2px solid #000; 93 border-radius: 15px; 94 padding: 10px; 95 } 96 .postbox button:hover { 97 filter: drop-shadow(5px 5px #000); 98 top: -3px; left: -3px; 99 } 100 .postbox button:active { 101 filter: drop-shadow(-2px -2px #000); 102 top: 2px; left: 2px; 103 } 104 .postbox button.cancel { 105 background-color: #ff5371; 106 margin-right: 10px; 107 } 108 109 110 /* Popups */ 111 #fc_popup { z-index: 2; } 112 .popup { 113 position: absolute; 114 display: flex; 115 padding: 5px; 116 border: 2px solid #FFF; 117 border-radius: 10px; 118 filter: drop-shadow(10px 10px 10px #000); 119 gap: 5px; 120 z-index: 1; 121 } 122 .popup.spoiler-pop { background: #000; } 123 .popup.reaction-pop { background: #00ceff; } 124 .popup .picked-emoji { font-size: 1.2em; } 125 .popup button { 126 border: 2px solid white; 127 border-radius: 5px; 128 font-size: 1.1em; 129 } 130 .popup button.cancel { background-color: #ff5371; color: white; } 131 .popup button.add { background-color: #649951; color: white; } 132 .popup button.pick { background-color: #cbf5ff; } 133 .popup input { 134 flex: 1; 135 background: #FEC; 136 font-size: 1em; 137 } 138 139 140 /* Animations */ 141 .whee { 142 border: 1px solid black; 143 animation: whee-anim 2s infinite; 144 } 145 @keyframes whee-anim { 146 0% { background: #D55; } 147 50% { background: #FD8; } 148 100% { background: #D55; } 149 } 150 151 /* Display Post */ 152 h2.day { 153 font-size: 2em; 154 color: #ADE; 155 border-bottom: 6px dotted; 156 } 157 .posts { margin-left: 20px; } 158 .post { max-width: 700px; margin-bottom: 30px; } 159 .post .avatar { } 160 .post .image { margin-left: 4em; } 161 .post .info { 162 display: flex; gap: 10px; 163 color: #888; 164 font-size: 0.9em; 165 margin: 10px 0; 166 background-image: linear-gradient(to right, #F5F5E2FF , #F5F5E200); 167 } 168 .post .info a, .post .info a:visited { 169 color: #999; 170 padding: 5px; 171 margin-left: 1em; 172 } 173 .post .info a:hover { color: #538; } 174 .post > .txt { margin-left: 60px; } 175 .spoiler { background: #d7bcff; color: #86b0; } 176 .spoiler:hover { background: #efe5ff; color: #000; cursor: pointer; } 177 .post .add_reaction:hover { background: #b3f7e4; } 178 .post .edit-link:hover { background: #f7d6b3; } 179 .reactions { 180 color: #555; 181 margin-left: 60px; 182 border-top: 1px solid #555; 183 margin-top: 5px; 184 padding-top: 5px; 185 } 186 .reactions .emoji { font-size: 1.2em; margin-right: 5px; } 187 .reactions .user { font-size: 0.8em; margin-right: 5px; } 188 .reactions .txt { font-size: 0.8em; } 189 .post a.edit-link { margin-left: 1em; } 190 191 192 /* "Special" posts group together horizontally */ 193 .special { 194 display: flex; gap: 20px; 195 border-width: 2px 2px 2px 16px; 196 border-radius: 20px; 197 border-style: solid; 198 padding: 10px; 199 } 200 .special .post { flex: 1; max-width: 350px; } 201 .special .info a { margin-left: 5px; } 202 .special1 { /* wordplay */ border-color: #87c037; } 203 .special2 { /* connections */ border-color: #bc70c4; } 204 .special .post .txt { margin-left: 0; } 205 .special .reactions { margin-left: 0; } 206 .special .control-row { display: flex; flex-direction: column; } 207 .special .control-row .buttons { display: flex; flex-direction: column; } 208 .special .control-row .buttons button { margin: 10px; } 209 /* swap order of submit and cancel */ 210 .special .control-row .buttons .cancel { order: 2; } 211 212 .small { font-size: 0.9em; }