/* css/start.css: sign up, upload, lists, the episode at work.
   Part 2 of 10 of the app's stylesheet (app.css until Phase 3). Every page loads all the parts, in the
   order of CSS in lib/views/parts.js, so a later part still wins a tie, as further down the one file did. */
/* sign up */
.signup {
  max-width: 1200px;
  margin: 0 auto;
  padding: 56px 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 56px;
  align-items: center;
}
.signup .pitch {
  flex: 999 1 480px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.signup .pitch h1 {
  font: 400 76px/0.98 var(--display);
  text-transform: uppercase;
}
.signup .box {
  flex: 1 1 380px;
  min-width: 0;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: 8px 8px 0 var(--edge);
}
.ticks {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font: 600 17px var(--body);
}
.ticks li {
  display: flex;
  gap: 10px;
  align-items: center;
}
.or {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--muted);
  font: 600 13px var(--body);
}
.or::before,
.or::after {
  content: "";
  flex: 1;
  height: 2px;
  background: var(--edge);
  opacity: 0.2;
}

/* upload */
.drop {
  width: 100%;
  background: #fff;
  border: 3px dashed var(--edge);
  border-radius: 22px;
  padding: 48px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  text-align: center;
}
.drop.over {
  background: #fff6d6;
}
.drop .ic {
  width: 84px;
  height: 84px;
  border: 3px solid var(--edge);
  border-radius: 18px;
  background: var(--mustard);
  display: flex;
  align-items: center;
  justify-content: center;
}
.progress {
  width: 100%;
  height: 14px;
  border: 2px solid var(--edge);
  border-radius: 999px;
  background: #fff;
  overflow: hidden;
}
.progress > div {
  height: 100%;
  width: 0;
  background: var(--tomato);
  transition: width 0.2s;
}
.progress.ok > div {
  background: var(--pickle);
}
.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* lists */
.rows {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.row {
  background: #fff;
  border: 3px solid var(--edge);
  border-radius: 14px;
  padding: 14px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
  text-decoration: none;
}
.row:hover {
  color: var(--fg);
  box-shadow: 5px 5px 0 var(--edge);
}
.row .t {
  flex: 1 1 260px;
  min-width: 0;
  font: 800 17px var(--body);
}
.badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 3px 10px;
  border: 2px solid var(--edge);
  border-radius: 8px;
  font: 800 12px var(--body);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  background: #fff;
}
.badge.ok {
  background: var(--pickle);
  color: #fff;
}
.badge.bad {
  background: var(--tomato);
  color: #fff;
}
.badge.wait {
  background: var(--mustard);
}

/* episode at work (F2) */
.worklist {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
  font: 700 16px var(--body);
}
.worklist li {
  display: flex;
  gap: 12px;
  align-items: center;
}
.worklist .num {
  width: 28px;
  height: 28px;
  flex: none;
  border-radius: 999px;
  border: 2px solid var(--edge);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: 900 13px var(--body);
  background: #fff;
}
.worklist .done .num {
  background: var(--pickle);
  color: #fff;
}
.worklist .on .num {
  background: var(--mustard);
}
.worklist .todo {
  color: var(--muted);
}
.voice {
  background: #fff;
  border: 3px solid var(--edge);
  border-radius: 16px;
  padding: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
}
.voice .said {
  flex: 1 1 260px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font: 500 16px/1.4 var(--body);
}
.voice .field {
  flex: 1 1 220px;
}
.play {
  width: 56px;
  height: 56px;
  flex: none;
  border: 3px solid var(--edge);
  border-radius: 999px;
  background: var(--mustard);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.play.on {
  background: var(--tomato);
}
.linkbtn {
  background: none;
  border: 0;
  padding: 8px 2px;
  font: 700 15px var(--body);
  text-decoration: underline;
  cursor: pointer;
  color: var(--fg);
}
