#console {
  flex-shrink: 0;
  max-height: 180px;
  overflow-y: auto;
  border-top: 1.5px solid var(--border);
  background: #181825;
  font-family: var(--ff-mono);
  font-size: 12.5px;
  display: none;
}

#console-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px;
  position: sticky;
  top: 0;
  background: #181825;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
#console-header span {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #74747c;
}
#console-header button {
  background: none;
  border: none;
  padding: 0;
  color: #74747c;
  cursor: pointer;
  font-size: 11px;
  font-weight: 600;
  font-family: inherit;
}
#console-header button:hover {
  color: #fff;
}

#console #console-body div {
  padding: 5px 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  color: #cdd6f4;
  white-space: pre-wrap;
  word-break: break-word;
  display: flex;
  gap: 8px;
}
#console #console-body div::before {
  border-radius: 4px;
  padding: 2px 4px;
  font-size: var(--text-xxs);
  font-size: 0.6rem;
  margin-right: 5px;
  font-weight: var(--text-bold);
  color: var(--theme-text-color);
}

#console #console-body div::before {
  flex-shrink: 0;
  opacity: 0.5;
}

#console #console-body div[data-type="log"]::before {
  content: "›";
}

#console #console-body div[data-type="error"] {
  color: #f38ba8;
  background: rgba(243, 139, 168, 0.06);
}

#console #console-body div[data-type="error"]::before {
  content: "x";
}

#console #console-body div[data-type="warn"] {
  color: #f9e2af;
  background: rgba(249, 226, 175, 0.06);
}

#console #console-body div[data-type="warn"]::before {
  content: "!";
}

#console #console-body div[data-type="info"] {
  color: #89b4fa;
}

#console #console-body div[data-type="info"]::before {
  content: "i";
}

.ide {
  background-color: #1e1e2e;
}

label {
  color: var(--text-color-primary);

  padding: var(--size-xs) var(--size-ss);
  font-weight: var(--text-bold);
  font-size: var(--text-s);
  display: block;
  order: 0;
  cursor: pointer;
  margin-bottom: var(--size-s);

  cursor: pointer;

  margin-bottom: 0;
  background: transparent;
  margin: 4px;
}

input[type="radio"] {
  display: none !important;
}
input[id="htmlTab"]:checked ~ div label[for="htmlTab"],
input[id="cssTab"]:checked ~ div label[for="cssTab"],
input[id="javascriptTab"]:checked ~ div label[for="javascriptTab"] {
  background: #2a2a39;
}

.tool .ide textarea {
  display: none;
  background-color: #1e1e2e;
  color: #eee;
  border: none;
  outline: none;
  box-shadow: none;
  padding: 16px 18px;
  font-family: var(--ff-mono);
  font-size: 13.5px;
  line-height: 1.7;
  background: #1e1e2e;
  color: #cdd6f4;
  tab-size: 2;
}
.tool .ide textarea:focus {
  outline: none;
}

input[id="htmlTab"]:checked ~ div textarea[id="html"] {
  display: block;
}
input[id="cssTab"]:checked ~ div textarea[id="css"] {
  display: block;
}
input[id="javascriptTab"]:checked ~ div textarea[id="javascript"] {
  display: block;
}
hr {
  display: block;
  border: none;
  height: 1px;
  background-color: #2a2a39;
  margin: 0;
}

.pane {
  flex: 1;
  background: var(--surface);
  display: flex;
  flex-direction: column;
}

.pane-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 16px;
  flex-shrink: 0;
  border-top: 1.5px solid var(--border);
  border-bottom: 1.5px solid var(--border);
  background: var(--surface-elevated);

  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text-muted);
  font-family: var(--ff-mono);
}
#output {
  min-height: var(--size-3xl);
  flex: 1;
}
