* { box-sizing: border-box; }
body {
  font: 14px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin: 0;
  background: #0e1116;
  color: #e6edf3;
}
header {
  display: flex; justify-content: space-between; align-items: center;
  padding: 16px 24px;
  border-bottom: 1px solid #21262d;
}
header h1 { margin: 0; font-size: 18px; }
main { max-width: 1080px; margin: 0 auto; padding: 24px; }
section { margin-bottom: 32px; }
.row { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
h2 { font-size: 16px; margin: 0 0 12px; }

form { display: grid; gap: 12px; max-width: 540px; }
label { display: grid; gap: 4px; font-size: 12px; color: #9ba2ab; }
input, select {
  padding: 8px 10px;
  background: #161b22;
  border: 1px solid #30363d;
  color: #e6edf3;
  border-radius: 6px;
  font: inherit;
}
button {
  padding: 8px 14px;
  background: #238636;
  color: #fff;
  border: none;
  border-radius: 6px;
  font: inherit;
  cursor: pointer;
}
button:hover { background: #2ea043; }
#cancel-create, #back-btn { background: #30363d; }
#cancel-create:hover, #back-btn:hover { background: #484f58; }

.err { color: #f85149; min-height: 1em; margin: 0; }

table { width: 100%; border-collapse: collapse; margin-top: 12px; }
th, td { text-align: left; padding: 8px 10px; border-bottom: 1px solid #21262d; }
th { color: #9ba2ab; font-weight: 500; font-size: 12px; }
td .status { padding: 2px 8px; border-radius: 999px; font-size: 11px; }
.status-creating { background: #1f6feb33; color: #58a6ff; }
.status-running  { background: #23863633; color: #3fb950; }
.status-failed   { background: #f8514933; color: #f85149; }
.status-destroying { background: #d2992233; color: #d29922; }
.status-destroyed { background: #30363d; color: #9ba2ab; }

a { color: #58a6ff; text-decoration: none; }
a:hover { text-decoration: underline; }

pre#log-pre {
  background: #0a0d12;
  border: 1px solid #21262d;
  padding: 12px;
  border-radius: 6px;
  max-height: 70vh;
  overflow: auto;
  font: 12px/1.4 ui-monospace, Menlo, monospace;
  white-space: pre-wrap;
  word-break: break-all;
}
