:root {
  --lq-black: #333;
  --lq-gray: #ced4da;
  --lq-red: #ff8787;
  --lq-pink: #f783ac;
  --lq-grape: #da77f2;
  --lq-violet: #9775fa;
  --lq-indigo: #748ffc;
  --lq-blue: #4dabf7;
  --lq-cyan: #3bc9db;
  --lq-teal: #38d9a9;
  --lq-green: #69db7c;
  --lq-lime: #a9e34b;
  --lq-yellow: #ffd43b;
  --lq-orange: #ffa94d;
  --lq-theme: var(--lq-blue);
}

html,
body {
  height: 100%;
  min-height: 100%;
  margin: 0;
  padding: 0;
}

body {
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

.ui[class*="left action"].input > .dropdown {
  border-radius: 0 0.28571429rem 0.28571429rem 0;
}

.ui.selection.dropdown {
  width: 205px;
}

.lm_header .lm_tab {
  padding-bottom: 3px;
  height: 16px;
  font-family: "Droid Sans Mono", monospace, monospace, "Droid Sans Fallback";
  font-size: 14px;
}

.lm_header .lm_tab.lm_active {
  box-shadow: none;
  padding-bottom: 3px;
}

#site-navigation {
  border-radius: 0;
  margin: 0;
  background: #1e1e1e;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  height: 45px;
}

#navigation-message {
  font-size: 1.2em;
  white-space: nowrap;
  overflow: hidden;
}

@keyframes slide {
  0% {
    transform: translateX(570px);
  }
  100% {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes slide {
  0% {
    transform: translateX(570px);
  }
  100% {
    transform: translateX(-100%);
  }
}

.navigation-message-text {
  white-space: nowrap;
  -moz-animation: slide 60s linear infinite;
  -webkit-animation: slide 60s linear infinite;
  animation: slide 60s linear infinite;
}

.navigation-message-text:hover {
  -moz-animation-play-state: paused;
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}

#navigation-message a {
  color: var(--lq-theme);
  font-weight: bold;
}

#site-icon {
  height: 30px;
  vertical-align: middle;
}

#site-header {
  padding-left: 0;
  padding-top: 0;
  padding-bottom: 0;
}

#site-header h2 {
  display: inline;
  vertical-align: middle;
  font-family: sans-serif;
  font-weight: 400;
  padding-left: 5px;
}

#site-content {
  height: calc(100% - 45px - 19px);
}

#site-modal .header {
  color: #db2828;
}

#run-btn {
  background-color: var(--lq-theme);
}

#site-footer,
#status-line {
  background-color: var(--lq-theme);
  bottom: 0;
  font-family: "Droid Sans Mono", monospace, monospace, "Droid Sans Fallback";
  font-size: 13px;
  height: 19px;
  padding-left: 16px;
  padding-right: 16px;
  position: fixed;
}

#site-footer {
  color: white;
  left: 0;
  text-align: center;
  width: 100%;
}

#site-footer a {
  color: white;
  font-weight: bold;
}

#site-footer a:hover {
  color: #333;
}

#status-line {
  color: #fff;
  float: right;
  right: 0;
  text-align: right;
  width: fit-content;
}

#editor-status-line {
  background: transparent;
  color: #fff;
  font-family: monospace;
  height: 19px;
  padding: 0px 16px;
  width: inherit;
}

#editor-status-line input[type="text"] {
  background: transparent;
  border: none;
  color: #fff;
  font-family: monospace;
  outline: none;
}

#editor-status-line input[type="text"]::selection {
  background-color: #cce2ff;
  color: #fff;
}

.blink {
  animation: blinker 1s linear infinite;
}

@keyframes blinker {
  50% {
    background: #ffd700;
  }
}

.dot {
  background: #0e6eb8;
  position: absolute;
  border-radius: 50px;
  width: 5px;
  height: 5px;
  right: 7.5px;
  top: 7.5px;
}

.no-left-padding {
  padding-left: 0 !important;
}

input[type="text"] {
  width: 205px !important;
}

#teamNameInput {
  font-size: 12px;
  padding: 0;
  border-radius: 0.28571429rem;
  height: calc(100%-1px);
  min-width: 14em;
  display: inline-block;
  padding: 0.785714em 2.1em 0.785714em 1em;
  color: rgba(0, 0, 0, 0.87);
  font-weight: 600;
  outline: none;
  border: none;
}

#btnSubmitTeam {
  font-size: 12px;
  padding: 0;
  border-radius: 0.28571429rem;
  height: calc(100%-1px);
  min-width: 8em;
  display: inline-block;
  padding: 0.785714em 1em 0.785714em 1em;
  background-color: #35bb6f;
  color: rgba(255, 255, 255, 0.87);
  font-weight: 600;
  outline: none;
  cursor: pointer;
  border: none;
}

#teamNameInput:disabled {
  color: rgba(193, 193, 193, 0.87)
}

#btnSubmitTeam:disabled {
  background-color: #175331;
}

/* Mobile Responsive Styles */
@media screen and (max-width: 768px) {
  #site-navigation {
    height: auto;
    min-height: 45px;
    flex-wrap: wrap;
  }
  
  #site-navigation .left.menu {
    flex-wrap: wrap;
    width: 100%;
  }
  
  #site-navigation .item {
    margin: 2px 0;
    padding: 4px 8px;
  }
  
  #site-header h2 {
    font-size: 1.2em;
    display: none; /* Hide on very small screens */
  }
  
  #site-icon {
    height: 25px;
  }
  
  .ui.selection.dropdown {
    width: 150px;
    min-width: 120px;
  }
  
  #teamNameInput {
    min-width: 10em;
    width: 120px !important;
    font-size: 11px;
    padding: 0.5em 0.8em;
  }
  
  #btnSubmitTeam {
    min-width: 6em;
    font-size: 11px;
    padding: 0.5em 0.8em;
  }
  
  #run-btn {
    font-size: 12px;
    padding: 0.5em 0.8em;
  }
  
  #run-btn .icon {
    margin-right: 0.3em;
  }
  
  #run-btn span {
    display: none; /* Hide text on mobile, keep icon */
  }
  
  #navigation-message {
    display: none; /* Hide navigation message on mobile to save space */
  }
  
  input[type="text"] {
    width: 120px !important;
  }
}

@media screen and (max-width: 480px) {
  #site-navigation {
    padding: 0 5px;
  }
  
  #site-header {
    flex: 1;
    min-width: 0;
  }
  
  #site-header h2 {
    display: none;
  }
  
  .ui.selection.dropdown {
    width: 100px;
    min-width: 80px;
  }
  
  #teamNameInput {
    min-width: 8em;
    width: 100px !important;
    font-size: 10px;
    padding: 0.4em 0.6em;
  }
  
  #btnSubmitTeam {
    min-width: 5em;
    font-size: 10px;
    padding: 0.4em 0.6em;
  }
  
  #run-btn {
    font-size: 11px;
    padding: 0.4em 0.6em;
  }
  
  input[type="text"] {
    width: 100px !important;
  }
  
  /* Stack elements vertically on very small screens */
  #site-navigation .left.menu .item {
    width: 100%;
    text-align: center;
    margin: 1px 0;
  }
  
  #site-navigation .left.menu .item:not(:first-child) {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
  }
}

/* Ensure teamNameInput is always visible and properly styled */
#teamNameWrapper {
  display: inline-block;
  margin: 0 5px;
}

#teamNameInput {
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: white;
}

#teamNameInput::placeholder {
  color: rgba(255, 255, 255, 0.6);
}

#teamNameInput:focus {
  background-color: rgba(255, 255, 255, 0.15);
  border-color: var(--lq-theme);
}

/* Improve button styling for mobile */
#btnSubmitTeam:hover {
  background-color: #2ea55a;
  transform: translateY(-1px);
  transition: all 0.2s ease;
}

#btnSubmitTeam:active {
  transform: translateY(0);
}
