.timer {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 10px 20px;
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  animation: slideIn 0.3s ease;
  transition: background 0.25s;
}

.timer.urgent {
  background: rgba(255, 107, 107, 0.08);
  border-bottom-color: rgba(255, 107, 107, 0.35);
}
.timer.urgent .elapsed { color: var(--red); }
.timer.urgent .fill { background: var(--red); }

.left {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.icon { font-size: 20px; }

.meta {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.label {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
  color: var(--blue);
  text-transform: uppercase;
}

.bundleName {
  font-size: 12px;
  font-weight: 600;
  color: var(--text);
  white-space: nowrap;
}

.center {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.timeDisplay {
  display: flex;
  align-items: baseline;
  gap: 4px;
}

.elapsed {
  font-family: var(--mono);
  font-size: 18px;
  font-weight: 700;
  color: var(--text);
  line-height: 1;
}

.sep {
  font-size: 14px;
  color: var(--text-3);
}

.total {
  font-family: var(--mono);
  font-size: 13px;
  color: var(--text-3);
}

.bar {
  height: 4px;
  background: var(--surface3);
  border-radius: 2px;
  overflow: hidden;
}

.fill {
  height: 100%;
  background: var(--blue);
  border-radius: 2px;
  transition: width 1s linear;
}

.progress {
  font-size: 11px;
  color: var(--text-3);
}

.right {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.abandonBtn {
  padding: 7px 14px;
  background: none;
  color: var(--red);
  border: 1px solid color-mix(in srgb, var(--red) 40%, transparent);
  border-radius: 8px;
  font-size: 12px;
  font-weight: 700;
  font-family: var(--sans);
  cursor: pointer;
  transition: background 0.15s, transform 0.1s;
  white-space: nowrap;
}
.abandonBtn:hover { background: var(--red-dim); transform: scale(1.03); }
.abandonBtn:active { transform: scale(0.97); }

.submitBtn {
  padding: 7px 18px;
  background: var(--blue);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 700;
  font-family: var(--sans);
  cursor: pointer;
  transition: opacity 0.15s, transform 0.1s;
  white-space: nowrap;
}
.submitBtn:hover { opacity: 0.85; transform: scale(1.03); }
.submitBtn:active { transform: scale(0.97); }

.urgentTag {
  font-size: 11px;
  font-weight: 700;
  color: var(--red);
  animation: pulse 1.5s infinite;
  margin-left: 6px;
}
