/* Copyright (C) 2008-2010 Markus Gutschke <markus@shellinabox.com> All rights reserved.
   SPDX-License-Identifier: GPL-2.0
*/

#vt100 a {
  text-decoration:      none;
  color:                inherit;
}

#vt100 a:hover {
  text-decoration:      underline;
}

#vt100 #reconnect {
  position:             absolute;
  z-index:              2;
}

#vt100 #reconnect input {
  padding:              1ex;
  font-weight:          bold;
  font-size:            x-large;
}

#vt100 #cursize {
  background:           #EEEEEE;
  border:               1px solid black;
  font-family:          sans-serif;
  font-size:            large;
  font-weight:          bold;
  padding:              1ex;
  position:             absolute;
  z-index:              2;
}

#vt100 pre {
  margin:               0px;
}

#vt100 pre pre {
  overflow:             hidden;
}

#vt100 #scrollable {
  overflow-x:           hidden;
  overflow-y:           scroll;
  position:             relative;
  padding:              1px;
}

#vt100 #console, #vt100 #alt_console, #vt100 #cursor, #vt100 #lineheight, #vt100 .hidden pre {
  font-family:          "DejaVu Sans Mono", "Everson Mono", FreeMono, "Andale Mono", monospace;
}

#vt100 #lineheight {
  position:             absolute;
  visibility:           hidden;
}

#vt100 #cursor {
  position:             absolute;
  left:                 0px;
  top:                  0px;
  overflow:             hidden;
  z-index:              1;
}

#vt100 #cursor.bright {
  background-color:     black;
  color:                white;
}

#vt100 #cursor.dim {
  visibility:           hidden;
}

#vt100 #cursor.inactive {
  border:               1px solid;
  margin:               -1px;
}

#vt100 #padding {
  visibility:           hidden;
  width:                1px;
  height:               0px;
  overflow:             hidden;
}

#vt100 .hidden {
  position:             absolute;
  top:                  -10000px;
  left:                 -10000px;
  width:                0px;
  height:               0px;
}

#vt100 #menu {
  overflow:             visible;
  position:             absolute;
  z-index:              3;
}

#vt100 #menu .popup {
  background-color:     #EEEEEE;
  border:               1px solid black;
  font-family:          sans-serif;
  position:             absolute;
}

#vt100 #menu .popup ul {
  list-style-type:      none;
  padding:              0px;
  margin:               0px;
  min-width:            10em;
}

#vt100 #menu .popup li {
  padding:              3px 0.5ex 3px 0.5ex;
}

#vt100 #menu .popup li.hover {
  background-color:     #444444;
  color:                white;
}

#vt100 #menu .popup li.disabled {
  color:                #AAAAAA;
}

#vt100 #menu .popup hr {
  margin:               0.5ex 0px 0.5ex 0px;
}

#vt100 #menu img {
  margin-right:         0.5ex;
  width:                1ex;
  height:               1ex;
}

#vt100 #scrollable.inverted { color:            #ffffff;
                              background-color: #000000; }

#vt100 #kbd_button {
  float:                left;
  position:             fixed;
  z-index:              0;
  visibility:           hidden;
}

#vt100 #keyboard {
  z-index:              3;
  position:             absolute;
}

#vt100 #keyboard .box {
  font-family:          sans-serif;
  background-color:     #cccccc;
  padding:              .8em;
  float:                left;
  position:             absolute;
  border-radius:        10px;
  -moz-border-radius:   10px;
  box-shadow:           4px 4px 6px #222222;
  -webkit-box-shadow:   4px 4px 6px #222222;
  /* Don't set the -moz-box-shadow. It doesn't properly scale when CSS
   * transforms are in effect. Once Firefox supports box-shadow, it should
   * automatically do the right thing. Until then, leave shadows disabled
   * for Firefox.
   */
  opacity:              0.85;
  -moz-opacity:         0.85;
  filter:               alpha(opacity=85);
}

#vt100 #keyboard .box * {
  vertical-align:       top;
  display:              inline-block;
}

#vt100 #keyboard b, #vt100 #keyboard i, #vt100 #keyboard s, #vt100 #keyboard u {
  font-style:           normal;
  font-weight:          bold;
  border-radius:        5px;
  -moz-border-radius:   5px;
  background-color:     #555555;
  color:                #eeeeee;
  box-shadow:           2px 2px 3px #222222;
  -webkit-box-shadow:   2px 2px 3px #222222;
  padding:              4px;
  margin:               2px;
  height:               2ex;
  display:              inline-block;
  text-align:           center;
  text-decoration:      none;
}

#vt100 #keyboard b, #vt100 #keyboard s {
  width:                2ex;
}

#vt100 #keyboard u, #vt100 #keyboard s {
  visibility:           hidden;
}

#vt100 #keyboard .shifted {
  display:              none;
}

#vt100 #keyboard .selected {
  color:                #888888;
  background-color:     #eeeeee;
  box-shadow:           0px 0px 3px #222222;
  -webkit-box-shadow:   0px 0px 3px #222222;
  position:             relative;
  top:                  1px;
  left:                 1px;
}

[if DEFINES_COLORS]
/* IE cannot properly handle "inherit" properties. So, the monochrome.css/
 * color.css style sheets cannot work, if we define colors in styles.css.
 */
[else DEFINES_COLORS]
#vt100 .ansi0               {                            }
#vt100 .ansi1               { color:            #cd0000; }
#vt100 .ansi2               { color:            #00cd00; }
#vt100 .ansi3               { color:            #cdcd00; }
#vt100 .ansi4               { color:            #0000ee; }
#vt100 .ansi5               { color:            #cd00cd; }
#vt100 .ansi6               { color:            #00cdcd; }
#vt100 .ansi7               { color:            #e5e5e5; }
#vt100 .ansi8               { color:            #7f7f7f; }
#vt100 .ansi9               { color:            #ff0000; }
#vt100 .ansi10              { color:            #00ff00; }
#vt100 .ansi11              { color:            #e8e800; }
#vt100 .ansi12              { color:            #5c5cff; }
#vt100 .ansi13              { color:            #ff00ff; }
#vt100 .ansi14              { color:            #00ffff; }
#vt100 .ansi15              { color:            #ffffff; }

#vt100 .bgAnsi0             { background-color: #000000; }
#vt100 .bgAnsi1             { background-color: #cd0000; }
#vt100 .bgAnsi2             { background-color: #00cd00; }
#vt100 .bgAnsi3             { background-color: #cdcd00; }
#vt100 .bgAnsi4             { background-color: #0000ee; }
#vt100 .bgAnsi5             { background-color: #cd00cd; }
#vt100 .bgAnsi6             { background-color: #00cdcd; }
#vt100 .bgAnsi7             { background-color: #e5e5e5; }
#vt100 .bgAnsi8             { background-color: #7f7f7f; }
#vt100 .bgAnsi9             { background-color: #ff0000; }
#vt100 .bgAnsi10            { background-color: #00ff00; }
#vt100 .bgAnsi11            { background-color: #e8e800; }
#vt100 .bgAnsi12            { background-color: #5c5cff; }
#vt100 .bgAnsi13            { background-color: #ff00ff; }
#vt100 .bgAnsi14            { background-color: #00ffff; }
#vt100 .bgAnsi15            {                            }
[endif DEFINES_COLORS]

@media print {
  #vt100 .scrollback {
    display:            none;
  }

  #vt100 #reconnect, #vt100 #cursor, #vt100 #menu, #vt100 #kbd_button, #vt100 #keyboard {
    visibility:         hidden;
  }

  #vt100 #scrollable {
    overflow:           hidden;
  }

  #vt100 #console, #vt100 #alt_console {
    overflow:           hidden;
    width:              1000000ex;
  }
}
