Persoenliche Mediazentrale
undisclosed
2023-01-23 03b95f100b605458e5bf2995e955882d9aa51868
commit | author | age
960359 1 /*
U 2   Tango - Personal Media Center
3   Copyright (C) 2021  Ulrich Hilger
4
5   This program is free software: you can redistribute it and/or modify
6   it under the terms of the GNU Affero General Public License as
7   published by the Free Software Foundation, either version 3 of the
8   License, or (at your option) any later version.
9
10   This program is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   GNU Affero General Public License for more details.
14
15   You should have received a copy of the GNU Affero General Public License
16   along with this program.  If not, see <https://www.gnu.org/licenses/>.
17 */
cfa858 18 html, body {
U 19   margin: 0;
20   padding: 0;
21   height: 100%; /* Anmerkung 2 */
22   font-size: larger;
d12f6e 23   font-family: 'Roboto';
cfa858 24 }
U 25 body {
26   min-height: 0; /* Anmerkung 1 */
27   display: flex;
28   flex-flow: column;
29 }
30 .inhalt {
31   display: flex;
32   flex-flow: row;
33   height: 100%; /* Anmerkung 2 */
34   min-height: 0; /* Anmerkung 1 */
35   background-color: #ededed;
36   overflow: hidden;
37 }
38 .nord {
39   background-color: black;
40   display: flex;
41   flex-flow: row;
d12f6e 42   height: 1.3em;
cfa858 43   align-items: center;
bebd47 44   justify-content: space-between;
d12f6e 45 }
U 46 #nav-menu {
47   margin-left: 0.4rem;
cfa858 48 }
U 49 .sued {
50   height: 1.5em;
51   overflow: hidden;
52   transition: all 0.3s ease-in;
53   background-color: lightgray;
54 }
55 .west {
56   flex-grow: 0;
57   flex-shrink: 0;
58   flex-basis: 4em;
faab2d 59   background-color: #ececec; /* white; */
cfa858 60   transition: all 0.3s ease-in;
U 61   overflow: hidden;
62   white-space: nowrap;
63 }
64 .ost {
65   flex-grow: 0;
66   flex-shrink: 0;
67   flex-basis: 6em;
68   transition: all 0.3s ease-in;
69   background-color: antiquewhite;
70   overflow: hidden;
71 }
72 .zentrum-behaelter {
73   display: flex;
74   flex-flow: column;
75   /* background-color: #eaeaea; */
76   width: 100%;
77 }
78
79 .zentrum {
80   width: 100%;
81   height: 100%;
82   overflow-x: hidden;
83   overflow-y: auto;
84   -webkit-overflow-scrolling: touch;
faab2d 85   background-color: white;
cfa858 86 }
U 87
88 .zentraler-inhalt {
89   padding: 0.5em;
90 }
91
92 /*
93   Anmerkungen:
94   1.) min.height: 0 fuer body und inhalt ist gegen einen Bug, vgl.
95       http://stackoverflow.com/questions/33859811/understanding-flexbox-and-overflowauto
96   2.) height 100% fuer html, body und inhalt sorgt dafuer, dass sich alles
97       immer ueber das gesamte Browserfenster ausdehnt.
98 */
99
100 .app-titel {
101   margin-left: 0.6em;
102   color: white;
0866ae 103   font-size: 1.2rem;
cfa858 104 }
U 105
106 .pointer-cursor {
107   cursor: pointer;
108 }
109
50e53e 110 .top-band {
U 111   display: flex;
112   flex-flow: row;
d12f6e 113   padding: 0.2rem 0 0.2rem 0.2rem;
0866ae 114   font-size: smaller;  
50e53e 115 }
U 116
78d707 117 .breadcrumb-behaelter {
U 118   display: flex;
119   flex-flow: row;
120   font-size: smaller;
121 }
122
123 .breadcrumb-link {
124   padding-right: 0.3rem;
125   text-decoration: none;
126   color: #0a67d1;
127 }
128
129 .breadcrumb-link:hover {
130   text-decoration: underline;
131 }
132
50e53e 133 .bereich-name {
U 134   padding-left: 0.4rem;
d12f6e 135   font-size: smaller;  
50e53e 136 }
U 137
cfa858 138 .dialog {
U 139   position: relative;
140   /* height: 0.1em; */
141   transition: all 0.3s ease-in;
0866ae 142   font-size: smaller;
cfa858 143 }
U 144
8239d1 145 .dialog-unten {
bebd47 146   /* position: relative; */
8239d1 147   /* height: 0.1em; */
bebd47 148   /* transition: all 0.3s ease-in; */
938b6b 149   height: 8.2em;
8239d1 150 }
U 151
cfa858 152 .dlg-behaelter {
U 153   line-height: 1.6;
154   padding: 0.4em;
155 }
156
157 .dlg-info {
faab2d 158   background-color: #dcf2fb; /* blau */
cfa858 159   padding: 0.4em;
U 160 }
161
162 /*
163   Close Button
164
165   <div>
166     <span class="close-btn">&#10006;</span>
167   </div>
168 */
169
170 .close-btn {
171   position: absolute;
172   top: 0px;
173   right: 0.4em;
174   margin: 0;
175   padding: 0;
176   font-size: 1.3em;
177   color: #b8b8b8;
178 }
b379f5 179
U 180 /* ab hier Mediazentrale */
181
792b21 182 .gehe-zu-formular{
U 183   font-size: smaller;
184 }
185
186 .gehe-zu-eingabe {
187   width: 2rem;
188 }
189
b379f5 190 .entity-formular {
U 191   display: flex;
192   flex-flow: column;
d12f6e 193   font-size: smaller;
b379f5 194 }
U 195
3e5a56 196 .geraet-schalt-eintrag {
U 197   display: flex;
198   flex-flow: row;
4a3508 199   /* justify-content: center; */
U 200   align-items: center;
3e5a56 201   font-size: smaller;
4a3508 202   padding: 0 0 0.2rem 0;
3e5a56 203 }
U 204
205 .schalt-geraet-name {
29be41 206   /* background-color: red; */
4a3508 207   padding: 0 0 0 0.2rem;
29be41 208 }
U 209
210 .schalt-geraet-false {
211   color: red;
212 }
213
214 .schalt-geraet-true {
215   color: green;
216   font-weight: bold;
217 }
218
219 .schalt-btn {
220   display: inline-block;
5c6214 221   
U 222   /*
223   width: 2rem;
224   font-size: medium;
225   display: inline-block;
226   height: 2rem;
227   */
228   
229   /* height: 38px; */
29be41 230   /* padding: 0 30px; */
U 231   text-align: center;
5c6214 232   font-size: 1.3rem;
29be41 233   font-weight: 600;
U 234   line-height: 38px;
235   letter-spacing: .1rem;
236   text-transform: uppercase;
237   text-decoration: none;
238   white-space: nowrap;
239   /* background-color: transparent;*/
240   border-radius: 4px;
5c6214 241   border: 0px solid #bbb;
29be41 242   cursor: pointer;
U 243   box-sizing: border-box;
4a3508 244   margin: 0 0.2rem 0 0;
29be41 245 }
U 246
5c6214 247 .toggle-icon {
U 248   pointer-events: none;
3e5a56 249 }
U 250
da33e6 251 .noselect {
U 252   -webkit-touch-callout: none; /* iOS Safari */
253     -webkit-user-select: none; /* Safari */
254      -khtml-user-select: none; /* Konqueror HTML */
255        -moz-user-select: none; /* Old versions of Firefox */
256         -ms-user-select: none; /* Internet Explorer/Edge */
257             user-select: none; /* Non-prefixed version, currently
258                                   supported by Chrome, Edge, Opera and Firefox */
259 }
260
faab2d 261 .entity-liste-kopf {
U 262   display: flex;
263   flex-flow: row;
264   justify-content: space-between;
265   vertical-align: middle;
266 }
267
268 .entity-liste-kopf .button {
269   /* margin-left: 1rem; */
270   /* margin-top: -0.2rem; */
271 }
272
b379f5 273 .entity-element {
U 274   margin: 0.4rem;
faab2d 275 }
d12f6e 276
9c7bda 277 .entity-form-element {
U 278   margin: 0.4rem;
d12f6e 279 }
faab2d 280
U 281 .entity-element:hover {
7c22a2 282   background-color: #ececec;
b379f5 283 }
U 284
a43e1a 285 .entity-liste {
U 286   list-style-type: none;
50e53e 287   padding: 0;
U 288   margin: 0;
a43e1a 289 }
U 290
291 .entity-eintrag {
50e53e 292   margin-top: 0.3rem;
a43e1a 293   margin-left: 0;
U 294   margin-right: 0;
295   margin-bottom: 0;
faab2d 296   cursor: pointer;
U 297 }
298
1bf4f6 299 .drag-over {
U 300   color: blueviolet;
301   border-style: dashed;
302   border-width: 1px;
303 }
304
305 .hide {
306   display: none;
307 }
308
faab2d 309 .entity-eintrag:hover {
da33e6 310   /* background-color: #ececec; */
c1c2b0 311   color: red;
U 312   /* font-weight: bolder; */
a43e1a 313 }
U 314
7c22a2 315 .entity-typ-folder:before {
U 316   font-family: "pikto";
317   content: '\f114';
318   padding-right: 0.3rem;
319 }
320
321 .entity-typ-audio:before {
322   font-family: "pikto";
323   content: '\e817'; /* icon-music */
324   padding-right: 0.3rem;
325 }
326
327 .entity-typ-video:before {
328   font-family: "pikto";
329   content: '\e816'; /* icon-video */
330   padding-right: 0.3rem;
331 }
332
333 .entity-typ-file:before {
334   font-family: "pikto";
335   content: '\e805';  /* icon-doc */
336   padding-right: 0.3rem;
337 }
338
90d368 339 .entity-typ-katalog:before {
U 340   font-family: "pikto";
341   content: '\f1c0';  /* icon-database */
342   padding-right: 0.3rem;
343 }
344
5b7356 345 .form-button-footer {
U 346   display: flex;
347   flex-flow: row;
7c22a2 348 }
U 349
350 .selected {
351   background-color: #ececec;
5b7356 352 }
U 353
78d707 354 .added-to-playlist {
U 355   background-color: #cce1fa;
356 }
357
5b7356 358 .dlg-btn {
U 359   margin-left: 0.4rem;
360 }
361
bebd47 362 .ctrl {
U 363   display: flex;
364   flex-flow: column;
365 }
366
367 .ctrl-btns {
368   display: flex;
369   flex-flow: row;
370   justify-content: center;
371 }
372
373 .ctrl-item {
374   margin-left: 0.2rem;
375   margin-top: 0.2rem;
376 }
377
8d7d35 378 .ctrl-btn, .ctrl-btn:focus {
50e53e 379   width: 2rem;
b90d67 380   font-size: medium;
U 381   display: inline-block;
382   height: 2rem;
383   /* padding: 0 30px; */
7c22a2 384   color: black;
b90d67 385   text-align: center;
U 386   font-weight: 600;
387   line-height: 2rem;
388   letter-spacing: .1rem;
389   text-transform: none;
390   text-decoration: none;
391   white-space: nowrap;
8d7d35 392   /* background-color: transparent; */
b90d67 393   border-radius: 4px;
8d7d35 394   border: 0;
b90d67 395   cursor: pointer;
U 396   box-sizing: border-box; 
8d7d35 397 }
U 398
399 .ctrl-btn:hover {
400   color: white;
401   background-color: #707070; /* #e1e1e1;*/  /* #707070; */
bebd47 402 }
U 403
404 .ctrl-select {
405   width: 4rem;
406 }
407
408 .ctrl-orte {
409   display: flex;
410   flex-flow: row;
411   justify-content: center;
412 }
413
f6ea0c 414 .ctrl-menue {
U 415   display: flex;
416   flex-flow: row;
417   justify-content: center;  
418 }
419
bebd47 420 .top-btn-area {
8d7d35 421   display: flex;
U 422   flex-flow: row;
bebd47 423   /*margin-left: auto;*/
0866ae 424   margin: -0.2em 0.2em 0 2em;
bebd47 425 }
U 426
8d7d35 427 .top-btn, .top-btn:focus {
bebd47 428   margin: 0;
0866ae 429   padding: 0 0.1rem 0 0.1rem;
bebd47 430   height: 1.3em;
U 431   line-height: 1em;
432   text-align: center;
433   font-size: large;
8d7d35 434   color: white;
U 435   border-radius: 4px;
436   border: 0;
437   /* background-color: white; */
0866ae 438   width: 1.4rem;
bebd47 439 }
U 440
8d7d35 441 .top-btn:hover {
U 442   color: black;
443   background-color: #e1e1e1; /* #707070; */
444 }
faab2d 445
b379f5 446 @media (min-width: 800px) {
faab2d 447   .zentraler-inhalt {
b379f5 448     margin: 0 10% 0 10%;
U 449   }
a07e7e 450   
U 451   .ctrl {
452     display: flex;
453     flex-flow: row;
454     justify-content: center;
455   }
456
457   .dialog-unten {
458     /* position: relative; */
459     /* height: 0.1em; */
460     /* transition: all 0.3s ease-in; */
461     height: 2.2em;
462   }
463   
464   .ctrl-btns {
465     /* margin: 0 0 0 1rem; */
466   }
467   
468   .ctrl-orte {
469     margin: 0 0 0 1.8rem;    
470   }
471   
472   .ctrl-menue {
473     margin: 0 0 0 1.8rem;    
474   }
475   
b379f5 476 }
U 477
d12f6e 478 /* Fonts */
U 479
480 @font-face {
481   font-family: 'Roboto';
482   src: url('font/Roboto-Regular.ttf') format('truetype');
483 }
484
b90d67 485 /* Font für Piktogramme mit Fontello aus FontAwesome erzeugt */
U 486
487 @font-face {
488   font-family: 'pikto';
392dc9 489   src: url('font/pikto.ttf?73409988') format('truetype');
b90d67 490   font-weight: normal;
U 491   font-style: normal;
492 }
493 /* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
494 /* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
495 /*
496 @media screen and (-webkit-min-device-pixel-ratio:0) {
497   @font-face {
498     font-family: 'pikto';
392dc9 499     src: url('../font/pikto.svg?73409988#pikto') format('svg');
b90d67 500   }
U 501 }
502 */
392dc9 503 [class^="icon-"]:before, [class*=" icon-"]:before {
b90d67 504   font-family: "pikto";
U 505   font-style: normal;
506   font-weight: normal;
507   speak: never;
392dc9 508
b90d67 509   display: inline-block;
U 510   text-decoration: inherit;
511   width: 1em;
512   margin-right: .2em;
513   text-align: center;
514   /* opacity: .8; */
392dc9 515
b90d67 516   /* For safety - reset parent styles, that can break glyph codes*/
U 517   font-variant: normal;
518   text-transform: none;
392dc9 519
b90d67 520   /* fix buttons height, for twitter bootstrap */
U 521   line-height: 1em;
392dc9 522
b90d67 523   /* Animation center compensation - margins should be symmetric */
U 524   /* remove if not needed */
392dc9 525   margin-left: .2em;
U 526
b90d67 527   /* you can be more comfortable with increased icons size */
U 528   /* font-size: 120%; */
392dc9 529
b90d67 530   /* Font smoothing. That was taken from TWBS */
U 531   -webkit-font-smoothing: antialiased;
532   -moz-osx-font-smoothing: grayscale;
392dc9 533
b90d67 534   /* Uncomment for 3D effect */
U 535   /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
536 }
392dc9 537
b90d67 538 .icon-cancel:before { content: '\e800'; } /* '' */
U 539 .icon-th-large:before { content: '\e801'; } /* '' */
540 .icon-th-list:before { content: '\e802'; } /* '' */
541 .icon-folder:before { content: '\e803'; } /* '' */
542 .icon-folder-open:before { content: '\e804'; } /* '' */
543 .icon-doc:before { content: '\e805'; } /* '' */
544 .icon-pencil:before { content: '\e806'; } /* '' */
545 .icon-trash-empty:before { content: '\e807'; } /* '' */
546 .icon-down-dir:before { content: '\e808'; } /* '' */
547 .icon-up-dir:before { content: '\e809'; } /* '' */
548 .icon-left-dir:before { content: '\e80a'; } /* '' */
549 .icon-right-dir:before { content: '\e80b'; } /* '' */
550 .icon-down-open:before { content: '\e80c'; } /* '' */
551 .icon-left-open:before { content: '\e80d'; } /* '' */
552 .icon-right-open:before { content: '\e80e'; } /* '' */
553 .icon-up-open:before { content: '\e80f'; } /* '' */
554 .icon-floppy:before { content: '\e810'; } /* '' */
555 .icon-eye:before { content: '\e811'; } /* '' */
556 .icon-logout:before { content: '\e812'; } /* '' */
557 .icon-play:before { content: '\e813'; } /* '' */
558 .icon-stop:before { content: '\e814'; } /* '' */
559 .icon-pause:before { content: '\e815'; } /* '' */
560 .icon-video:before { content: '\e816'; } /* '' */
561 .icon-music:before { content: '\e817'; } /* '' */
562 .icon-forward:before { content: '\e818'; } /* '' */
563 .icon-list:before { content: '\e819'; } /* '' */
f6ea0c 564 .icon-cog:before { content: '\e81a'; } /* '' */
U 565 .icon-cog-alt:before { content: '\e81b'; } /* '' */
566 .icon-wrench:before { content: '\e81c'; } /* '' */
567 .icon-flash:before { content: '\e81d'; } /* '' */
392dc9 568 .icon-volume-down:before { content: '\e81e'; } /* '' */
U 569 .icon-volume-up:before { content: '\e81f'; } /* '' */
f6ea0c 570 .icon-rss:before { content: '\f09e'; } /* '' */
b90d67 571 .icon-docs:before { content: '\f0c5'; } /* '' */
U 572 .icon-menu:before { content: '\f0c9'; } /* '' */
573 .icon-doc-text:before { content: '\f0f6'; } /* '' */
574 .icon-angle-left:before { content: '\f104'; } /* '' */
575 .icon-angle-right:before { content: '\f105'; } /* '' */
576 .icon-angle-up:before { content: '\f106'; } /* '' */
577 .icon-angle-down:before { content: '\f107'; } /* '' */
578 .icon-tablet:before { content: '\f10a'; } /* '' */
579 .icon-folder-empty:before { content: '\f114'; } /* '' */
580 .icon-folder-open-empty:before { content: '\f115'; } /* '' */
581 .icon-ellipsis:before { content: '\f141'; } /* '' */
582 .icon-ellipsis-vert:before { content: '\f142'; } /* '' */
583 .icon-doc-inv:before { content: '\f15b'; } /* '' */
584 .icon-doc-text-inv:before { content: '\f15c'; } /* '' */
585 .icon-database:before { content: '\f1c0'; } /* '' */
586 .icon-sliders:before { content: '\f1de'; } /* '' */
587 .icon-trash:before { content: '\f1f8'; } /* '' */
f6ea0c 588 .icon-toggle-off:before { content: '\f204'; } /* '' */
U 589 .icon-toggle-on:before { content: '\f205'; } /* '' */
590 .icon-podcast:before { content: '\f2ce'; } /* '' */
b90d67 591
392dc9 592
U 593
594
bebd47 595 /* Dropdown Menu */
U 596
597 /* Style The Dropdown Button */
598 .dropbtn {
599   background-color: white;
600   width: 3em;
601   padding: 0;
602   font-size: medium;
603   cursor: pointer;
604 }
605
606 /* The container <div> - needed to position the dropdown content */
607 .dropdown {
608   position: relative;
609   display: inline-block;
610 }
611
612 /* Dropdown Content (Hidden by Default) */
613 .dropdown-content {
614   display: none;
615   position: absolute;
616   background-color: #f9f9f9;
617   width: 12em;
618   box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
619   z-index: 1;
620   right: 0;
621   font-size: medium;
622 }
623
624 /* Links inside the dropdown */
625 .dropdown-content a {
626   color: black;
627   padding: 0.5em 0.8em;
628   text-decoration: none;
629   display: block;
630   cursor: pointer;
631 }
632
633 /* Change color of dropdown links on hover */
634 .dropdown-content a:hover {background-color: #f1f1f1}
635
636 /* Show the dropdown menu on hover */
637 .dropdown:hover .dropdown-content {
638   display: block;
639 }
640
641 /* Change the background color of the dropdown button when the dropdown content is shown */
642 .dropdown:hover .dropbtn {
643   background-color: #33C3F0; /* #3e8e41; */
644   color: white;
645   border: none;
646 }
b379f5 647
U 648 /* von Skeleton */
649
650 /* Buttons
651 –––––––––––––––––––––––––––––––––––––––––––––––––– */
652 .button,
653 button,
654 input[type="submit"],
655 input[type="reset"],
656 input[type="button"] {
657   display: inline-block;
658   height: 38px;
bebd47 659   /* padding: 0 30px; */
b379f5 660   color: #555;
U 661   text-align: center;
662   font-size: 11px;
663   font-weight: 600;
664   line-height: 38px;
665   letter-spacing: .1rem;
666   text-transform: uppercase;
667   text-decoration: none;
668   white-space: nowrap;
669   background-color: transparent;
670   border-radius: 4px;
671   border: 1px solid #bbb;
672   cursor: pointer;
673   box-sizing: border-box; }
674 .button:hover,
675 button:hover,
676 input[type="submit"]:hover,
677 input[type="reset"]:hover,
678 input[type="button"]:hover,
679 .button:focus,
680 button:focus,
681 input[type="submit"]:focus,
682 input[type="reset"]:focus,
683 input[type="button"]:focus {
684   color: #333;
685   border-color: #888;
686   outline: 0; }
687 .button.button-primary,
688 button.button-primary,
689 input[type="submit"].button-primary,
690 input[type="reset"].button-primary,
691 input[type="button"].button-primary {
692   color: #FFF;
693   background-color: #33C3F0;
694   border-color: #33C3F0; }
695 .button.button-primary:hover,
696 button.button-primary:hover,
697 input[type="submit"].button-primary:hover,
698 input[type="reset"].button-primary:hover,
699 input[type="button"].button-primary:hover,
700 .button.button-primary:focus,
701 button.button-primary:focus,
702 input[type="submit"].button-primary:focus,
703 input[type="reset"].button-primary:focus,
704 input[type="button"].button-primary:focus {
705   color: #FFF;
706   background-color: #1EAEDB;
707   border-color: #1EAEDB; }
708
709
710 /* Forms
711 –––––––––––––––––––––––––––––––––––––––––––––––––– */
712 input[type="email"],
713 input[type="number"],
714 input[type="search"],
715 input[type="text"],
716 input[type="tel"],
717 input[type="url"],
718 input[type="password"],
719 textarea,
720 select {
721   height: 38px;
bebd47 722   padding: 3px 2px; /* The 6px vertically centers text on FF, ignored by Webkit */
b379f5 723   background-color: #fff;
U 724   border: 1px solid #D1D1D1;
725   border-radius: 4px;
726   box-shadow: none;
727   box-sizing: border-box; }
728 /* Removes awkward default styles on some inputs for iOS */
729 input[type="email"],
730 input[type="number"],
731 input[type="search"],
732 input[type="text"],
733 input[type="tel"],
734 input[type="url"],
735 input[type="password"],
736 textarea {
737   -webkit-appearance: none;
738      -moz-appearance: none;
739           appearance: none; }
740 textarea {
741   min-height: 65px;
742   padding-top: 6px;
743   padding-bottom: 6px; }
744 input[type="email"]:focus,
745 input[type="number"]:focus,
746 input[type="search"]:focus,
747 input[type="text"]:focus,
748 input[type="tel"]:focus,
749 input[type="url"]:focus,
750 input[type="password"]:focus,
751 textarea:focus,
752 select:focus {
753   border: 1px solid #33C3F0;
754   outline: 0; }
755 label,
756 legend {
757   display: block;
758   margin-bottom: .5rem;
759   font-weight: 600; }
760 fieldset {
761   padding: 0;
762   border-width: 0; }
763 input[type="checkbox"],
764 input[type="radio"] {
765   display: inline; }
766 label > .label-body {
767   display: inline-block;
768   margin-left: .5rem;
769   font-weight: normal; }