]> git.gir.st - subscriptionfeed.git/blob - app/static/style.css
don't rely on calc(max()) css to get video to display
[subscriptionfeed.git] / app / static / style.css
1 body {
2 font-family: sans-serif;
3 background: #333;
4 color: #eee;
5 }
6
7 .card-main .title,
8 .more-actions label,
9 a:link, a:visited ,
10 summary {
11 color: #ccc;
12 text-decoration: none;
13 cursor: pointer;
14 }
15
16 .card-main:hover .title, .card-main:active .title,
17 .more-actions label:hover, .more-actions label:active,
18 a:active, a:hover ,
19 summary:active, summary:hover {
20 color: #fff;
21 text-decoration: none;
22 }
23
24 article {
25 max-width: 1200px;
26 margin: auto;
27 }
28
29 .flashes {
30 margin: 0 auto;
31 padding: .5em 1.5em;
32 box-sizing: border-box;
33 max-width: 1200px; /* same as .articles */
34 }
35
36 .flashes>li {
37 display: block;
38 border-radius: 5px;
39 width: 100%;
40 padding: 1em 2em;
41 box-sizing: border-box;
42 }
43
44 .flashes>.flash-radio:checked ~ li {
45 display: none;
46 }
47 .flashes>li .flash-close {
48 float:right;
49 margin-right: -.5em;
50 }
51 .flashes>li .flash-close::before {
52 content: '\1f7ad';
53 font-size: larger;
54 cursor: pointer;
55 }
56 .flashes>li.message .flash-close::before:hover,
57 .flashes>li.info .flash-close::before:hover {
58 color: #333;
59 }
60
61 .flashes>li a {
62 text-decoration: underline;
63 }
64
65 .flashes>li.info {
66 background-color: #ace;
67 border: 1px solid #5ae;
68 color: #111;
69 }
70 .flashes>li.info a {
71 color: #333;
72 }
73
74 .flashes>li.message {
75 background-color: #aaa;
76 border: 1px solid #888;
77 color: #111;
78 }
79 .flashes>li.message a {
80 color: #333;
81 }
82
83 .flashes>li.error {
84 background-color: #f33;
85 border: 1px solid #700;
86 color: #eee;
87 }
88 .flashes>li.error a {
89 color:#700;
90 }
91
92 .flashes>li.welcome {
93 border: 1px solid white;
94 }
95 .flashes>li.welcome h2,
96 .flashes>li.welcome p {
97 margin: 0.5em 0;
98 }
99 .flashes h2 {
100 font-size: 1.2em;
101 }
102
103 .cards {
104 display: flex;
105 flex-wrap: wrap;
106 justify-content: center;
107 }
108 .cards hr {
109 width: 100%;
110 }
111
112 .card {
113 box-shadow: 0 0 5px #222;
114 border:1px solid #222;
115 padding: .5em;
116 margin: 0 .25em .5em .25em;
117 width: 270px;
118 }
119
120 .card .thumb {
121 width: 100%;
122 height: calc(270px / 16 * 9);
123 position: relative;
124 }
125 .card .thumb img {
126 width: 100%; height: 100%;
127 object-fit: contain;
128 }
129 .card .thumb .badge {
130 position: absolute;
131 right: 0;
132 bottom: 0;
133 background: rgba(16,16,16,.8);
134 margin: .2em;
135 padding: .2em;
136 border-radius: 6px;
137 font-size: smaller;
138 }
139
140 .card .title {
141 margin-bottom: .5em;
142 height: 2.3em;
143 line-height: 1.2em;
144 overflow: hidden;
145 }
146
147 .card .card-main {
148 position: relative;
149 }
150
151 .card .link-main {
152 position: absolute;
153 left: 0; top: 0; right: 0; bottom: 0;
154 }
155
156 .card .infobar{
157 display: flex;
158 }
159
160 .card .info-main, .card .infobar>:first-child {
161 overflow: hidden;
162 white-space: nowrap;
163 text-overflow: ellipsis;
164 min-width: 0;
165 flex: 99;
166 }
167
168 .infobar .advanced{
169 flex: 1;
170 white-space: nowrap;
171 text-align: right;
172 }
173
174 .card.dummy {
175 box-shadow: none;
176 border-color: transparent;
177 margin-top: 0;
178 margin-bottom: 0;
179 padding-top: 0;
180 padding-bottom: 0;
181 }
182
183 .emoji {
184 cursor:pointer;
185 color: white;
186 }
187 .card .emoji, #submgr .emoji {
188 padding: 0 .7em;
189 }
190 .card .details>:last-child .emoji {
191 padding-right: 0;
192 }
193 #submgr .emoji{
194 margin-right:1em;
195 }
196 .advanced summary{
197 margin-bottom: .5em;
198 white-space: nowrap;
199 }
200 summary{
201 cursor: pointer;
202 }
203 details.advanced {
204 white-space: nowrap;
205 }
206 .advanced:not([open]) summary{
207 margin: 0;
208 }
209 .advanced form{
210 display:inline;
211 margin:0;
212 }
213 .advanced .details,
214 details .details {
215 display: flex;
216 }
217 ul#submgr{list-style: none}
218 #submgr form {
219 display: inline;
220 }
221 #submgr li {
222 margin: 1em 0;
223 }
224
225 .video_error {
226 width: 100%;
227 background: #ff3333;
228 padding: 1em 2em;
229 border:1px solid #700;
230 border-radius: 8px;
231 box-sizing: border-box;
232 margin: 1.5em 0;
233 }
234 .video_error::before {
235 content: '\26A0\fe0e';
236 }
237 .video_error a:link, .video_error a:visited {
238 color:#700;
239 }
240 .video_error a:hover, .video_error a:active {
241 color:#a00;
242 }
243
244 .main-video {
245 width: 100%;
246 }
247 /* https://stackoverflow.com/a/20201563 */
248 .aspect-ratio {
249 position: relative;
250 padding-top: calc( 100% / var(--aspect-ratio) );
251 }
252 /* Note: clamping aspect-ratio to avoid vertical videos going
253 off-screen, but only on browsers that support nesting calc/max: */
254 @supports (padding:calc(100%/max(1))) {
255 padding-top: calc( 100% / max(var(--aspect-ratio), 4/3) );
256 }
257 .aspect-ratio video {
258 position: absolute;
259 top: 0; left: 0;
260 width: 100%;
261 height: 100%;
262 }
263
264 .more-actions .emoji,
265 .more-actions input[type="checkbox"] {
266 margin: 0 .7em; /*like input.emoji's padding*/
267 }
268
269 .emoji-form {
270 display: inline;
271 }
272
273 .header-left:not(:first-of-type) {
274 margin-left: 1em;
275 }
276 .header-left.bold {
277 font-weight: bold;
278 }
279 .header-left.large {
280 font-size: large;
281 }
282
283 .pagination-container {
284 display: flex;
285 padding: 0 1em;
286 }
287 .pagination {
288 border: 1px solid #aaa;
289 background: #222;
290 padding: .5em;
291 flex: 1;
292 margin: 0 1em;
293 }
294 .pagination.prev::before {
295 content: '\2b9c';
296 padding-right: .25em;
297 }
298 .pagination.next {
299 text-align: right;
300 }
301 .pagination.next::after {
302 content: '\2b9e';
303 padding-left: .25em;
304 }
Imprint / Impressum