@import url('https://fonts.googleapis.com/css2?family=Squada+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cairo&display=swap');

* { --top-info-left: 280px; }

body { background: #d6ca96; font-size: 14pt; }
body, .tooltip { font-family: 'Cairo', sans-serif; }
h1 { font-family: 'Squada One', sans-serif; margin:0; padding-top: 10px; }
h2, h3 { font-family: 'Oswald', sans-serif; margin:0;}

nav ul { list-style-type: none; margin: 0; padding: 0; display: flex; }
nav ul li { padding: 4px; margin-right: 1px; }
nav ul li:before { content: " | "; }
nav ul li:first-child:before { content: ""; }
nav ul li.active { background-color: #cfcfcf; }


main { background-color: #eee2bc;
    padding: 10px; margin: 0;
    width: calc(100% - 20px);
    min-height: calc(100vh - 200px); }

#attempt-state { margin-left: 10px; }
#test-detail { background: white; padding: 10px; width: 100%; }
#test-detail:empty { background: transparent !important; }

a { color: #333; }
a:hover { color: #0162c2ff; background: #f3f0e5; }

#progress { float:left; border-right: solid 1px #333;
  margin-right:10px; padding-right: 10px; height:90%; }

#whoami { position:absolute; top: 20px; left: var(--top-info-left); }

.ws { position:absolute; top: 30px;
  width: 10px; height: 10px; border-radius: 10px;
  border: solid #333 1px; background: #999; }
.ws .tooltip { position: relative; left: -100px; width: 100px; }
.ws.connected { background-color: limegreen; }
.ws.disconnected { background-color: tomato; }
#browser-ws { right: 10px; }
#client-ws { right: 30px; }


.has-tooltip:hover .tooltip { visibility: visible;
  transition-delay: 500ms;
  font-weight:normal; font-size: small; }
.tooltip { visibility: hidden; background: white; color: #666;
  text-align: left; z-index: 1;
  border: solid #333 1px; padding: 4px;  position:absolute }

#buttons { display: inline-block; }

.hidden { display: none }
#shell {
  --shell-width: 500px;
  background: #999; border: solid #333 1px;
  padding: 10px; margin: 10px;
  width: calc(var(--shell-width) + 10px); }
#shell-output { background:#eee; height: 256px;
  width: var(--shell-width); height: 22lh;
  overflow-y: scroll; overflow-x: auto; }
#shell [name="msg"] { width: calc(var(--shell-width) - 60px); }
#shell button { width: 50px; }

.diff pre { display: block;  margin: 0; padding: 0; }
.diff del { color: #000; background: #fdd; }
.diff ins { color: #000; background: #dfd; }

/** flexbox with narrow progress in left column, wide test detail in right column */
#attempt { display: flex; }
#progress { flex: 1; max-width: 150px; }
#test-detail { flex: 3; }
#state { width: calc(100% - 230px); }
